https://community.kde.org/api.php?action=feedcontributions&user=Wojtask9&feedformat=atomKDE Community Wiki - User contributions [en]2024-03-29T09:01:55ZUser contributionsMediaWiki 1.40.2https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=34420Frameworks/Epics/kdelibs cleanups2013-09-18T15:32:27Z<p>Wojtask9: </p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) --Taken over by Martin Klapetek }}<br />
{{FeatureDone|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." https://git.reviewboard.kde.org/r/112481/ | Aurélien Gâteau}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|Rohan Garg <rohan@kde.org>}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Rework QFileDialog instances to prefer QFileDialog::setMimeTypeFilters() rather than manually converting mime types to globs (when https://codereview.qt-project.org/#change,63345 is merged)|}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureDone|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|Vishesh Handa}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureInProgress|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | David Edmundson}}<br />
<br />
{{FeatureDone|KStyle 1/3: Copy KStyle as K4Style in KDE4Support https://git.reviewboard.kde.org/r/112217| wojtask9.kde@gmail.com}}<br />
{{FeatureDone|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons https://git.reviewboard.kde.org/r/112519/| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureInProgress|Port kmimetypechooser.cpp from KRun to QProcess, then move it to a widgets framework that can use KConfig+KCoreAddons (but not kiowidgets, it doesn't use kio)| Vishesh Handa}}<br />
<br />
{{FeatureDone|Check if KScanDialog is still used. If not, deprecated. If yes, move to a framework that can use KService and KPageDialog, but not kiowidgets, it doesn't use kio| Àlex Fiestas}}<br />
{{FeatureTodo|Remove KTextEditSpellInterface. See TODOs inside ktextedit.h| ?}}<br />
{{FeatureDone|Update QCommandLineParser from the version that landed in qtbase dev and fix compilation (including plasma-framework). At least one thing changed, positionalArguments() and addHelpOption(str) is now setApplicationDescription(str)+addHelpOption(). Please do this before QCommandLineParser reaches qt5.git, or we'll be in trouble.| Martin Gräßlin}}<br />
{{FeatureDone|Port KJob to QEventLoopLocker. This provides the replacement of KGlobal::{de,}ref()| Albert Astal Cid, committed by Aurélien Gâteau}}<br />
{{FeatureDone|Port kfile/ from NetAccess to exec(). Then move NetAccess to kde4support, after ensuring all methods are documented as deprecated with a replacement solution (ask David if you don't find the replacement).| Àlex Fiestas}}<br />
{{FeatureTodo|Move find_packages() from kdelibs/CMakeLists.txt to kdelibs/$tier/$framework/CMakeLists.txt:| ?}}<br />
{{FeatureDone|Remove all links to libkdeqt5staging, since QCommandLineParser is in Qt https://git.reviewboard.kde.org/r/112557/| wojtask9.kde@gmail.com}}<br />
{{FeatureDone|All uses of NOGUI should be ported to ecm_mark_nongui_executable() -- Not as simple as it sound: real test on Windows and Mac OS is required to decide what is the best behavior.| Aleix Pol}}<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=34321Frameworks/Epics/kdelibs cleanups2013-09-10T08:46:32Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) --Taken over by Martin Klapetek }}<br />
{{FeatureDone|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." https://git.reviewboard.kde.org/r/112481/ | Aurélien Gâteau}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|Rohan Garg <rohan@kde.org>}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Rework QFileDialog instances to prefer QFileDialog::setMimeTypeFilters() rather than manually converting mime types to globs (when https://codereview.qt-project.org/#change,63345 is merged)|}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureDone|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|Vishesh Handa}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureInProgress|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | David Edmundson}}<br />
<br />
{{FeatureDone|KStyle 1/3: Copy KStyle as K4Style in KDE4Support https://git.reviewboard.kde.org/r/112217| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons https://git.reviewboard.kde.org/r/112519/| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureInProgress|Port kmimetypechooser.cpp from KRun to QProcess, then move it to a widgets framework that can use KConfig+KCoreAddons (but not kiowidgets, it doesn't use kio)| Vishesh Handa}}<br />
<br />
{{FeatureDone|Check if KScanDialog is still used. If not, deprecated. If yes, move to a framework that can use KService and KPageDialog, but not kiowidgets, it doesn't use kio| Àlex Fiestas}}<br />
{{FeatureTodo|Remove KTextEditSpellInterface. See TODOs inside ktextedit.h| ?}}<br />
{{FeatureDone|Update QCommandLineParser from the version that landed in qtbase dev and fix compilation (including plasma-framework). At least one thing changed, positionalArguments() and addHelpOption(str) is now setApplicationDescription(str)+addHelpOption(). Please do this before QCommandLineParser reaches qt5.git, or we'll be in trouble.| Martin Gräßlin}}<br />
{{FeatureDone|Port KJob to QEventLoopLocker. This provides the replacement of KGlobal::{de,}ref()| Albert Astal Cid, committed by Aurélien Gâteau}}<br />
{{FeatureDone|Port kfile/ from NetAccess to exec(). Then move NetAccess to kde4support, after ensuring all methods are documented as deprecated with a replacement solution (ask David if you don't find the replacement).| Àlex Fiestas}}<br />
{{FeatureTodo|Move find_packages() from kdelibs/CMakeLists.txt to kdelibs/$tier/$framework/CMakeLists.txt:| ?}}<br />
{{FeatureDone|Remove all links to libkdeqt5staging, since QCommandLineParser is in Qt https://git.reviewboard.kde.org/r/112557/| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|All uses of NOGUI should be ported to ecm_mark_nongui_executable() -- Not as simple as it sound: real test on Windows and Mac OS is required to decide what is the best behavior. Postponed for now.| Aleix Pol}}<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=34264Frameworks/Epics/kdelibs cleanups2013-09-06T15:14:50Z<p>Wojtask9: </p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) --Taken over by Martin Klapetek }}<br />
{{FeatureDone|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." https://git.reviewboard.kde.org/r/112481/ | Aurélien Gâteau}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|Rohan Garg <rohan@kde.org>}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Rework QFileDialog instances to prefer QFileDialog::setMimeTypeFilters() rather than manually converting mime types to globs (when https://codereview.qt-project.org/#change,63345 is merged)|}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureDone|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|Vishesh Handa}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureInProgress|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | David Edmundson}}<br />
<br />
{{FeatureDone|KStyle 1/3: Copy KStyle as K4Style in KDE4Support https://git.reviewboard.kde.org/r/112217| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons https://git.reviewboard.kde.org/r/112519/| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureInProgress|Port kmimetypechooser.cpp from KRun to QProcess, then move it to a widgets framework that can use KConfig+KCoreAddons (but not kiowidgets, it doesn't use kio)| Vishesh Handa}}<br />
<br />
{{FeatureDone|Check if KScanDialog is still used. If not, deprecated. If yes, move to a framework that can use KService and KPageDialog, but not kiowidgets, it doesn't use kio| Àlex Fiestas}}<br />
{{FeatureTodo|Remove KTextEditSpellInterface. See TODOs inside ktextedit.h| ?}}<br />
{{FeatureDone|Update QCommandLineParser from the version that landed in qtbase dev and fix compilation (including plasma-framework). At least one thing changed, positionalArguments() and addHelpOption(str) is now setApplicationDescription(str)+addHelpOption(). Please do this before QCommandLineParser reaches qt5.git, or we'll be in trouble.| Martin Gräßlin}}<br />
{{FeatureDone|Port KJob to QEventLoopLocker. This provides the replacement of KGlobal::{de,}ref()| Albert Astal Cid, committed by Aurélien Gâteau}}<br />
{{FeatureDone|Port kfile/ from NetAccess to exec(). Then move NetAccess to kde4support, after ensuring all methods are documented as deprecated with a replacement solution (ask David if you don't find the replacement).| Àlex Fiestas}}<br />
{{FeatureTodo|Move find_packages() from kdelibs/CMakeLists.txt to kdelibs/$tier/$framework/CMakeLists.txt:| ?}}<br />
{{FeatureInProgress|Remove all links to libkdeqt5staging, since QCommandLineParser is in Qt https://git.reviewboard.kde.org/r/112557/| wojtask9.kde@gmail.com}}<br />
{{FeatureDone|All uses of NOGUI should be ported to ecm_mark_nongui_executable() -- Not as simple as it sound: real test on Windows and Mac OS is required to decide what is the best behavior. Postponed for now.| ?}}<br />
<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=34204Frameworks/Epics/kdelibs cleanups2013-09-04T21:31:19Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) --Taken over by Martin Klapetek }}<br />
{{FeatureDone|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." https://git.reviewboard.kde.org/r/112481/ | Aurélien Gâteau}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|Rohan Garg <rohan@kde.org>}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Rework QFileDialog instances to prefer QFileDialog::setMimeTypeFilters() rather than manually converting mime types to globs (when https://codereview.qt-project.org/#change,63345 is merged)|}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureDone|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|Vishesh Handa}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureInProgress|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | David Edmundson}}<br />
<br />
{{FeatureDone|KStyle 1/3: Copy KStyle as K4Style in KDE4Support https://git.reviewboard.kde.org/r/112217| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons https://git.reviewboard.kde.org/r/112519/| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureInProgress|Port kmimetypechooser.cpp from KRun to QProcess, then move it to a widgets framework that can use KConfig+KCoreAddons (but not kiowidgets, it doesn't use kio)| Vishesh Handa}}<br />
<br />
{{FeatureDone|Check if KScanDialog is still used. If not, deprecated. If yes, move to a framework that can use KService and KPageDialog, but not kiowidgets, it doesn't use kio| Àlex Fiestas}}<br />
{{FeatureTodo|Remove KTextEditSpellInterface. See TODOs inside ktextedit.h| ?}}<br />
{{FeatureDone|Update QCommandLineParser from the version that landed in qtbase dev and fix compilation (including plasma-framework). At least one thing changed, positionalArguments() and addHelpOption(str) is now setApplicationDescription(str)+addHelpOption(). Please do this before QCommandLineParser reaches qt5.git, or we'll be in trouble.| Martin Gräßlin}}<br />
{{FeatureTodo|Port KJob to QEventLoopLocker. This provides the replacement of KGlobal::{de,}ref()| Mostly done at http://git.reviewboard.kde.org/r/112407/ but Albert is on holiday so feel free to base on that review and finish the comments by David}}<br />
{{FeatureDone|Port kfile/ from NetAccess to exec(). Then move NetAccess to kde4support, after ensuring all methods are documented as deprecated with a replacement solution (ask David if you don't find the replacement).| Àlex Fiestas}}<br />
{{FeatureTodo|Move find_packages() from kdelibs/CMakeLists.txt to kdelibs/$tier/$framework/CMakeLists.txt:| ?}}<br />
{{FeatureInProgress|Remove all links to libkdeqt5staging, since QCommandLineParser is in Qt| wojtask9.kde@gmail.com}}<br />
{{FeatureTodo|All uses of NOGUI should be ported to ecm_mark_nongui_executable()| ?}}<br />
<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=34203Frameworks/Epics/kdelibs cleanups2013-09-04T21:30:31Z<p>Wojtask9: </p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) --Taken over by Martin Klapetek }}<br />
{{FeatureDone|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." https://git.reviewboard.kde.org/r/112481/ | Aurélien Gâteau}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|Rohan Garg <rohan@kde.org>}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Rework QFileDialog instances to prefer QFileDialog::setMimeTypeFilters() rather than manually converting mime types to globs (when https://codereview.qt-project.org/#change,63345 is merged)|}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureDone|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|Vishesh Handa}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureInProgress|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | David Edmundson}}<br />
<br />
{{FeatureDone|KStyle 1/3: Copy KStyle as K4Style in KDE4Support https://git.reviewboard.kde.org/r/112217| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureInProgress|Port kmimetypechooser.cpp from KRun to QProcess, then move it to a widgets framework that can use KConfig+KCoreAddons (but not kiowidgets, it doesn't use kio)| Vishesh Handa}}<br />
<br />
{{FeatureDone|Check if KScanDialog is still used. If not, deprecated. If yes, move to a framework that can use KService and KPageDialog, but not kiowidgets, it doesn't use kio| Àlex Fiestas}}<br />
{{FeatureTodo|Remove KTextEditSpellInterface. See TODOs inside ktextedit.h| ?}}<br />
{{FeatureDone|Update QCommandLineParser from the version that landed in qtbase dev and fix compilation (including plasma-framework). At least one thing changed, positionalArguments() and addHelpOption(str) is now setApplicationDescription(str)+addHelpOption(). Please do this before QCommandLineParser reaches qt5.git, or we'll be in trouble.| Martin Gräßlin}}<br />
{{FeatureTodo|Port KJob to QEventLoopLocker. This provides the replacement of KGlobal::{de,}ref()| Mostly done at http://git.reviewboard.kde.org/r/112407/ but Albert is on holiday so feel free to base on that review and finish the comments by David}}<br />
{{FeatureDone|Port kfile/ from NetAccess to exec(). Then move NetAccess to kde4support, after ensuring all methods are documented as deprecated with a replacement solution (ask David if you don't find the replacement).| Àlex Fiestas}}<br />
{{FeatureTodo|Move find_packages() from kdelibs/CMakeLists.txt to kdelibs/$tier/$framework/CMakeLists.txt:| ?}}<br />
{{FeatureInProgress|Remove all links to libkdeqt5staging, since QCommandLineParser is in Qt| wojtask9.kde@gmail.com}}<br />
{{FeatureTodo|All uses of NOGUI should be ported to ecm_mark_nongui_executable()| ?}}<br />
<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=34202Frameworks/Epics/kdelibs cleanups2013-09-04T21:25:06Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) --Taken over by Martin Klapetek }}<br />
{{FeatureDone|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." https://git.reviewboard.kde.org/r/112481/ | Aurélien Gâteau}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|Rohan Garg <rohan@kde.org>}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Rework QFileDialog instances to prefer QFileDialog::setMimeTypeFilters() rather than manually converting mime types to globs (when https://codereview.qt-project.org/#change,63345 is merged)|}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureDone|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|Vishesh Handa}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureInProgress|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | David Edmundson}}<br />
<br />
{{FeatureDone|KStyle 1/3: Copy KStyle as K4Style in KDE4Support https://git.reviewboard.kde.org/r/112217| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons| wojtask9.kde@gmail.com}}<br />
{{FeatureTodo|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| ?}}<br />
<br />
{{FeatureInProgress|Port kmimetypechooser.cpp from KRun to QProcess, then move it to a widgets framework that can use KConfig+KCoreAddons (but not kiowidgets, it doesn't use kio)| Vishesh Handa}}<br />
<br />
{{FeatureDone|Check if KScanDialog is still used. If not, deprecated. If yes, move to a framework that can use KService and KPageDialog, but not kiowidgets, it doesn't use kio| Àlex Fiestas}}<br />
{{FeatureTodo|Remove KTextEditSpellInterface. See TODOs inside ktextedit.h| ?}}<br />
{{FeatureDone|Update QCommandLineParser from the version that landed in qtbase dev and fix compilation (including plasma-framework). At least one thing changed, positionalArguments() and addHelpOption(str) is now setApplicationDescription(str)+addHelpOption(). Please do this before QCommandLineParser reaches qt5.git, or we'll be in trouble.| Martin Gräßlin}}<br />
{{FeatureTodo|Port KJob to QEventLoopLocker. This provides the replacement of KGlobal::{de,}ref()| Mostly done at http://git.reviewboard.kde.org/r/112407/ but Albert is on holiday so feel free to base on that review and finish the comments by David}}<br />
{{FeatureDone|Port kfile/ from NetAccess to exec(). Then move NetAccess to kde4support, after ensuring all methods are documented as deprecated with a replacement solution (ask David if you don't find the replacement).| Àlex Fiestas}}<br />
{{FeatureTodo|Move find_packages() from kdelibs/CMakeLists.txt to kdelibs/$tier/$framework/CMakeLists.txt:| ?}}<br />
{{FeatureInProgress|Remove all links to libkdeqt5staging, since QCommandLineParser is in Qt| wojtask9.kde@gmail.com}}<br />
{{FeatureTodo|All uses of NOGUI should be ported to ecm_mark_nongui_executable()| ?}}<br />
<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=34065Frameworks/Epics/kdelibs cleanups2013-08-30T12:15:01Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) --Taken over by Martin Klapetek }}<br />
{{FeatureTodo|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." | ?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|Rohan Garg <rohan@kde.org>}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Rework QFileDialog instances to prefer QFileDialog::setMimeTypeFilters() rather than manually converting mime types to globs (when https://codereview.qt-project.org/#change,63345 is merged)|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureInProgress|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|Vishesh Handa}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureInProgress|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | David Edmundson}}<br />
<br />
{{FeatureDone|KStyle 1/3: Copy KStyle as K4Style in KDE4Support https://git.reviewboard.kde.org/r/112217| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons| wojtask9.kde@gmail.com}}<br />
{{FeatureTodo|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| ?}}<br />
<br />
{{FeatureInProgress|Port kmimetypechooser.cpp from KRun to QProcess, then move it to a widgets framework that can use KConfig+KCoreAddons (but not kiowidgets, it doesn't use kio)| Vishesh Handa}}<br />
<br />
{{FeatureTodo|Check if KScanDialog is still used. If not, deprecated. If yes, move to a framework that can use KService and KPageDialog, but not kiowidgets, it doesn't use kio| ?}}<br />
{{FeatureTodo|Remove KTextEditSpellInterface. See TODOs inside ktextedit.h| ?}}<br />
{{FeatureTodo|Update QCommandLineParser from the version that landed in qtbase dev and fix compilation (including plasma-framework). At least one thing changed, positionalArguments() and addHelpOption(str) is now setApplicationDescription(str)+addHelpOption(). Please do this before QCommandLineParser reaches qt5.git, or we'll be in trouble.| ?}}<br />
{{FeatureTodo|Port KJob to QEventLoopLocker. This provides the replacement of KGlobal::{de,}ref()| ?}}<br />
{{FeatureTodo|Port kfile/ from NetAccess to exec(). Then move NetAccess to kde4support, after ensuring all methods are documented as deprecated with a replacement solution (ask David if you don't find the replacement).| ?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33946Frameworks/Epics/kdelibs cleanups2013-08-22T11:35:14Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureDone|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port and Kevin Ottens}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureDone|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureDone|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) }}<br />
{{FeatureTodo|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." | ?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureTodo|Implement queueing directly in KDialogJobUiDelegate|?}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/ - cannot move to kde4support, but all uses of KFileDialog have been removed except for KEncodingFileDialog|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureTodo|Make KEncodingFileDialog static-only in order to reduce KFileDialog usage|}}<br />
<br />
{{FeatureDone|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|Àlex fiestas}}<br />
<br />
{{FeatureDone|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Move KGlobalSettings to kde4support. Depends on many other tasks here|Aleix Pol}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureDone|KDocTools needs to use tr to remove KI18n dependency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureTodo|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | ?}}<br />
<br />
{{FeatureInProgress|KStyle 1/3: Copy KStyle as K4Style in KDE4Support| wojtask9.kde@gmail.com}}<br />
{{FeatureInProgress|KStyle 2/3: Remove everything from KStyle which is not a reimplementation of the following methods: polish, unpolish, eventFilter, styleHint, pixelMetrics, standardIcons| wojtask9.kde@gmail.com}}<br />
{{FeatureTodo|KStyle 3/3: From what remains of KStyle after the previous two tasks, evaluate what is here to enforce platform settings and what might make style developers life too hard, keep only the parts about platform settings and let go the rest (this work should be coordinated with Hugo Pereira Da Costa)| ?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33866Frameworks/Epics/kdelibs cleanups2013-08-19T14:32:00Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
{{FeatureDone|Port all of kdelibs from NetAccess::synchronousRun to job->exec, including unittests. This will make it possible to move kio/tests/jobtest.cpp and jobremotetest to staging/kio (and only link them to kiocore). There's a left use in accessmanager.cpp|Aleix Pol}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureDone|Port kdelibs from KProcess to QProcess (except kpty and KRun) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureDone|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|Martin Klapetek}}<br />
<br />
{{FeatureDone|Replace usage of KSocketFactory by the implementation of the method (it's very short).|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KFileMetaInfoItem and PredicateProperties from kio, as well as kfile/kfilemetadatareader* to kde4support<br />
https://git.reviewboard.kde.org/r/111897/|aleixpol@kde.org}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|scarpino@kde.org}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureDone|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureDone|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com, Kevin Ottens}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureDone|Make kioslave/file portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|Port kfile/kdiroperator.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111701/}}<br />
{{FeatureDone|Port kio/kfile/krecentdocument.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111675/}}<br />
{{FeatureInProgress|Port kio/src/core/authinfo.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|David Gil https://git.reviewboard.kde.org/r/111636/}}<br />
<br />
{{FeatureDone|Port kded/kded.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111857/}}<br />
{{FeatureDone|Port kdesu/client.cpp and kdesu/process.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls<br />
https://git.reviewboard.kde.org/r/111886/|aleixpol@kde.org}}<br />
{{FeatureDone|Port khtml/khtml_part.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kinit/kinit.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek http://git.reviewboard.kde.org/r/111890}}<br />
{{FeatureDone|Port kinit/klauncher.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kinit/klauncher_main.cpp: away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111887}}<br />
{{FeatureDone|Port kio/tests/fileundomanagertest.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kio/tests/kiotesthelper.h away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Martin Klapetek https://git.reviewboard.kde.org/r/111891}}<br />
{{FeatureDone|Port kioslave/ftp/ftp.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Vishesh Handa}}<br />
{{FeatureDone|Port kpty/kpty.cpp away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile and/or Qt equivalents of kde_file.h calls|Kevin Ottens}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureInProgress|Make use of qplatformdefs.h definitions instead of using the POSIX versions directly. | Aurélien Gâteau (Away until September, feel free to take over this task if necessary) }}<br />
{{FeatureTodo|Partly revert commit b03e81a61311ae1b64b0d37415477f9c08fe6142 which ported KFileItem to QFile::Permissions. Quoting David Faure:<br />
"Port back from QFile::Permissions to mode_t given that mode_t is available in win32-msvc*/qplatformdefs.h<br />
<br />
(not everywhere, but in the places where the above commits did a half job at porting from mode_t to QFile::Permissions).<br />
<br />
QFile::Permissions is more limited (no suid bits) and having to convert between mode_t and QFile::Permissions is just extra work." | ?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureDone|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureInProgress|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic) https://git.reviewboard.kde.org/r/112037/|Teo Mrnjavac <teo@kde.org>}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureDone|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|Kevin Ottens}}<br />
<br />
{{FeatureDone|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureDone|Move KStyle to tier4/consistency|Kevin Ottens}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureInProgress|KDocTools needs to use tr to remove KI18n dependency| Miquel Canes}}<br />
<br />
{{FeatureDone|Evaluate if KConfigWidgets can be merged with another framework: With its recent growth and the dependencies changes it seems to well stand on its own now.|Kevin Ottens}}<br />
<br />
{{FeatureDone|Add helper code to Sonnet to make it easy to install on a QTextEdit | Aurélien Gâteau}}<br />
{{FeatureTodo|Refactor KTextEdit to use Sonnet::TextEditDecorator, to avoid code duplication | ?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33346Frameworks/Epics/kdelibs cleanups2013-07-21T09:42:01Z<p>Wojtask9: </p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureInProgress|Port kdelibs from KProcess to QProcess (except kpty) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureTodo|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|?}}<br />
<br />
{{FeatureTodo|Replace usage of KSocketFactory by the implementation of the method (it's very short).|?}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
{{FeatureDone|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|?}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|?}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureInProgress|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureInProgress|Make the code portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
Update: kioslave/file is almost done, some last pieces are missing<br />
|Martin Klapetek<br />
David Gil}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureTodo|Port all uses of mode_t (hard)|?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureTodo|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureInProgress|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|?}}<br />
<br />
{{FeatureInProgress|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureTodo|Move KStyle to tier4/consistency|?}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureInProgress|KDocTools needs to use tr to remove KI18n dependency| Miquel Canes}}<br />
<br />
{{FeatureTodo|Evaluate if KConfigWidgets can be merged with another framework|?}}<br />
<br />
{{FeatureTodo|Document all dependencies in CMakeLists between frameworks|?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33338Frameworks/Epics/kdelibs cleanups2013-07-19T20:02:23Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureInProgress|Port kdelibs from KProcess to QProcess (except kpty) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureTodo|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|?}}<br />
<br />
{{FeatureTodo|Replace usage of KSocketFactory by the implementation of the method (it's very short).|?}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
{{FeatureInProgress|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|?}}<br />
<br />
{{FeatureDone|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|?}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureInProgress|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureInProgress|Make the code portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
Update: kioslave/file is almost done, some last pieces are missing<br />
|Martin Klapetek<br />
David Gil}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureTodo|Port all uses of mode_t (hard)|?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureTodo|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureInProgress|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|?}}<br />
<br />
{{FeatureInProgress|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureTodo|Move KStyle to tier4/consistency|?}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureInProgress|KDocTools needs to use tr to remove KI18n dependency| Miquel Canes}}<br />
<br />
{{FeatureTodo|Evaluate if KConfigWidgets can be merged with another framework|?}}<br />
<br />
{{FeatureTodo|Document all dependencies in CMakeLists between frameworks|?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33337Frameworks/Epics/kdelibs cleanups2013-07-19T18:47:29Z<p>Wojtask9: </p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureInProgress|Port kdelibs from KProcess to QProcess (except kpty) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureTodo|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|?}}<br />
<br />
{{FeatureTodo|Replace usage of KSocketFactory by the implementation of the method (it's very short).|?}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
{{FeatureInProgress|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|?}}<br />
<br />
{{FeatureInProgress|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work) https://git.reviewboard.kde.org/r/111609|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|?}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureInProgress|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureInProgress|Make the code portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
Update: kioslave/file is almost done, some last pieces are missing<br />
|Martin Klapetek<br />
David Gil}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureTodo|Port all uses of mode_t (hard)|?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureTodo|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureInProgress|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|?}}<br />
<br />
{{FeatureInProgress|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureTodo|Move KStyle to tier4/consistency|?}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureInProgress|KDocTools needs to use tr to remove KI18n dependency| Miquel Canes}}<br />
<br />
{{FeatureTodo|Evaluate if KConfigWidgets can be merged with another framework|?}}<br />
<br />
{{FeatureTodo|Document all dependencies in CMakeLists between frameworks|?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33336Frameworks/Epics/kdelibs cleanups2013-07-19T15:58:02Z<p>Wojtask9: </p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureInProgress|Port kdelibs from KProcess to QProcess (except kpty) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureTodo|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|?}}<br />
<br />
{{FeatureTodo|Replace usage of KSocketFactory by the implementation of the method (it's very short).|?}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
{{FeatureInProgress|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|?}}<br />
<br />
{{FeatureInProgress|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work)|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|?}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureInProgress|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureInProgress|Make the code portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
Update: kioslave/file is almost done, some last pieces are missing<br />
|Martin Klapetek<br />
David Gil}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureTodo|Port all uses of mode_t (hard)|?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureTodo|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureInProgress|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|?}}<br />
<br />
{{FeatureInProgress|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureTodo|Move KStyle to tier4/consistency|?}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureInProgress|KDocTools needs to use tr to remove KI18n dependency| Miquel Canes}}<br />
<br />
{{FeatureTodo|Evaluate if KConfigWidgets can be merged with another framework|?}}<br />
<br />
{{FeatureTodo|Document all dependencies in CMakeLists between frameworks|?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33334Frameworks/Epics/kdelibs cleanups2013-07-19T14:55:32Z<p>Wojtask9: </p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureInProgress|Port kdelibs from KProcess to QProcess (except kpty) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureTodo|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|?}}<br />
<br />
{{FeatureTodo|Replace usage of KSocketFactory by the implementation of the method (it's very short).|?}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
{{FeatureInProgress|Move kio/kfile/kdiskfreespace.cpp to kde4support https://git.reviewboard.kde.org/r/111605/|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|?}}<br />
<br />
{{FeatureTodo|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work)|?}}<br />
<br />
{{FeatureTodo|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|?}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureInProgress|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureInProgress|Make the code portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
Update: kioslave/file is almost done, some last pieces are missing<br />
|Martin Klapetek<br />
David Gil}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureTodo|Port all uses of mode_t (hard)|?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureTodo|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureInProgress|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|?}}<br />
<br />
{{FeatureInProgress|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureTodo|Move KStyle to tier4/consistency|?}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureInProgress|KDocTools needs to use tr to remove KI18n dependency| Miquel Canes}}<br />
<br />
{{FeatureTodo|Evaluate if KConfigWidgets can be merged with another framework|?}}<br />
<br />
{{FeatureTodo|Document all dependencies in CMakeLists between frameworks|?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33333Frameworks/Epics/kdelibs cleanups2013-07-19T14:48:39Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureInProgress|Port kdelibs from KProcess to QProcess (except kpty) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
{{FeatureTodo|Go through all users of KEMailSettings (e.g. in lxr.kde.org) to find which methods are actually used, deprecate the others|?}}<br />
<br />
{{FeatureTodo|Replace usage of KSocketFactory by the implementation of the method (it's very short).|?}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
{{FeatureInProgress|Move kio/kfile/kdiskfreespace.cpp to kde4support|wojtask9.kde@gmail.com}}<br />
<br />
{{FeatureTodo|Move K4AboutData and KComponentData to kde4support (not used anymore, apparently)|?}}<br />
<br />
{{FeatureTodo|Replace signals: with Q_SIGNALS: and slots with Q_SLOTS: everywhere in kdelibs (to make moving less work)|?}}<br />
<br />
{{FeatureTodo|Move tests that didn't follow their classes. E.g. kcompositejobtest from kdecore/tests to kcoreaddons/autotests.|?}}<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureInProgress|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureInProgress|Make the code portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile.<br />
Update: kioslave/file is almost done, some last pieces are missing<br />
|Martin Klapetek<br />
David Gil}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureTodo|Port all uses of mode_t (hard)|?}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureTodo|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureInProgress|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|?}}<br />
<br />
{{FeatureInProgress|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureTodo|Move KStyle to tier4/consistency|?}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
{{FeatureInProgress|KDocTools needs to use tr to remove KI18n dependency| Miquel Canes}}<br />
<br />
{{FeatureTodo|Evaluate if KConfigWidgets can be merged with another framework|?}}<br />
<br />
{{FeatureTodo|Document all dependencies in CMakeLists between frameworks|?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/kdelibs_cleanups&diff=33163Frameworks/Epics/kdelibs cleanups2013-07-13T15:05:09Z<p>Wojtask9: /* Cleaning up kdelibs */</p>
<hr />
<div>= Cleaning up kdelibs =<br />
<br />
Next to the other efforts for kdelibs modularization, there's also some cleanup tasks which needs to be done accross the whole kdelibs codebase. Tasks in here are probably more suitable for short term, bite sized involvement.<br />
<br />
'''Note''': For most of those tasks we try to put an estimation of the difficulty can be: easy, normal, hard (somewhat like in video games). ;-)<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=250 | Contact<br />
|-<br />
{{FeatureDone|remove kglobal.h include from staging/kwidgets/src/icons/kiconloader.h, fix compilation by adding the header where necessary (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move ktypelist.h from kdecore/util to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kentrymaptest from kdecore/tests to kconfig/autotests (easy)|Christoph Cullmann}}<br />
{{FeatureDone|move kascii and kasciitest to kde4support (easy)|Christoph Cullmann}}<br />
{{FeatureDone|Port away from KGlobalSettings::singleClick() (easy)|Dominik Haumann}}<br />
{{FeatureDone|#cmakedefine -> #cmakedefine01, #ifdef -> #if, in order to catch missing includes (easy)|Nicolas Lécureuil}}<br />
{{FeatureDone|Port from KCmdLineArgs+KApp to QApp+setApplicationName in all unittests that don't use args (easy)|Jeremy Whiting}}<br />
{{FeatureDone|kio/netaccess.h: there are some "TODOs" about deprecating most methods in favour of job+exec (TODO: compare with synchronousRun) (normal)|Àlex Fiestas}}<br />
<br />
<br />
{{FeatureDone|Fix kfileplacesmodeltest (normal)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move to kcoreaddons the tests in kdecore/tests that are actually tests for classes in kcoreaddons, except kurltest (easy)|Anne-Marie Mahfouf}}<br />
<br />
{{FeatureDone|"cp kurlmimetest.cpp kurlmimedatatest.cpp" and port the second one to KUrlMimeData (in order to test both the deprecated API and the new API). After that, move the old one (kurlmimetest) to kde4support. (normal)|Lambert Clara}}<br />
<br />
{{FeatureDone|Port kcmdlineargs from KUrl to QUrl, then move KUrl out of kcoreaddons, and into kdecore for now, final destination will be kde4support. (easy)|Matt Williams}}<br />
<br />
{{FeatureInProgress|Port kdelibs from KProcess to QProcess (except kpty) (easy). Warning: Need to port some functionnality to Qt 5|Martin Sandsmark}}<br />
<br />
{{FeatureDone|Update qmimetype in kdelibs from the one soon merged to Qt5, port all of kdelibs to the API changes. (normal)|David Faure}}<br />
<br />
{{FeatureDone|Create a staging/kconfig framework out of kdecore/config + kdecore/kernel/kauthorized*. Code should be ready (no more dependencies on the rest of kdecore). (normal)|David}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KGlobal::config() to KSharedConfig::openConfig(), adjust includes (easy)|Claus Christensen}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KMimeType to QMimeType, see KDE5PORTING.html for details (easy)|David Faure}}<br />
<br />
{{FeatureDone|deprecate KLineEdit::clickMessage, by applying https://git.reviewboard.kde.org/r/101360/diff/#index_header and porting kdelibs (easy and quick)|Benjamin Port}}<br />
<br />
{{FeatureDone|Move KDialog saveDialogSize+restoreDialogSize to static methods taking a QDialog.|Benjamin Port}}<br />
<br />
<br />
{{FeatureInProgress|Finish deprecating methods marked as @deprecated (add macro+ifdef, ensure kdelibs doesn't use).|Benjamin Port}}<br />
<br />
<br />
{{FeatureDone|Move KDialogQueue into separate files.|Benjamin Port}}<br />
<br />
{{FeatureDone|Port all of kdelibs (except kde*support and classes aimed for tier4) from KDialog to QDialog|Kevin Ottens}}<br />
<br />
{{FeatureDone|Port from KGlobalSettings::desktopGeometry to QApplication::desktop()->screenGeometry (very easy)|Stephen Kelly}}<br />
<br />
{{FeatureDone|extract KProtocolInfo out of ksycoca, making it simply read from installed files on demand. (normal)|David Faure}}<br />
<br />
{{FeatureDone|move KProtocolInfo to KIO, requires to split out its unittests from kmimetypetest, and to somehow sort out the call to KProtocolInfo inside kmimetype (normal)|David Faure}}<br />
<br />
{{FeatureDone|when gpgmepp is not found, make plasma only skip the Signature class, rather than skipping all of plasma (easy)|David Faure}}<br />
<br />
{{FeatureDone|One of the things we need to remove is all of the use of the Q_WS_* defines. (easy)<br />
<br />
git grep Q_WS_<br />
<br />
Some of them should be ported to a Q_OS_ define (eg, some of Q_WS_WIN should <br />
be ported to Q_OS_WIN), but *not all of them*, so this can't just be changed <br />
with a script. It should be done manually. Some of them need to be ported to <br />
QPA (lighthouse) in some way.|Kevin Ottens}}<br />
<br />
For a walk through example, see [http://thread.gmane.org/gmane.comp.kde.devel.frameworks/319/focus=328 this thread]<br />
<br />
{{FeatureInProgress|Another thing that should be done is using Find packages from ECM or CMake. (normal)<br />
<br />
For example, run 'git grep find_package' in tier1/solid. Some of the results are provided by CMake, and some come from the local kdelibs/cmake/modules folder. The kdelibs/cmake/modules folder should not need to be used. For example find_package(Flex) in solid should be replaced with find_package(FLEX) which is provided by CMake.<br />
<br />
The goal is to be able to run <br />
<br />
cd tier1/solid && mkdir build && cd build && cmake .. && make<br />
<br />
for each framework. <br />
<br />
This is already possible with the itemmodels framework.<br />
<br />
It also works with solid, because the packages it searches for are optional <br />
and the FindFoo.cmake files are not found.|George Goldberg (grundleborg)<br />
<br />
Frameworks Done:<br />
*tier1/itemmodels (except for autotests)<br />
*tier1/karchive<br />
*tier1/kcodecs<br />
*tier1/kcoreaddons<br />
*tier1/kdbusaddons<br />
*tier1/kideltime<br />
*tier1/kjs (*)<br />
*tier1/kplotting<br />
*tier1/kwidgetsaddons<br />
*tier1/kwindowsystem<br />
*tier1/solid (*)<br />
*tier1/sonnet (*)<br />
*tier1/threadweaver<br />
<br />
*tier2/kauth (*)<br />
*'''tier2/kconfig''' has problems building. need to resolve these first.<br />
<br />
(*) Means that there are still FindFOO.cmake files in the framework's directory.<br />
}}<br />
<br />
{{FeatureInProgress|Find out what should be part of the link interface and what should not be. (normal but long), [[Frameworks/Epics/kdelibs_cleanups/link_private_details|details...]]|wojtask9.kde@gmail.com}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC where the Qt4 API is sufficient|Albert Astals Cid}}<br />
{{FeatureDone|Port from K_GLOBAL_STATIC to Q_GLOBAL_STATIC needs Qt 5.1 changes|?}}<br />
<br />
{{FeatureTodo|Porting in [[KDE_Core/KLocale/Frameworks]]|?}}<br />
<br />
{{FeatureInProgress|Make the code portable: port away from kde_file.h, i.e. from KDE::open/rename/stat/lstat/access/... to QFile<br />
Update: kioslave/file is almost done, some last pieces are missing<br />
|Martin Klapetek}}<br />
<br />
{{FeatureDone|KDEGuiAddons should be renamed and maybe repurposed|Kevin Ottens}}<br />
<br />
{{FeatureDone|qWarning << QUrl::errorString() rather than QMessageBox with QUrl::toString() (which is empty) to the user when the URL is invalid (grep for "Invalid URL"?)|Martin Klapetek}}<br />
<br />
{{FeatureDone|kdeui/colors/kcolorhelpers_p.h has at least a copy in <br />
kdeguiaddons, and perhaps another in kcolorwidgets. Resolve that.|Kévin Ottens}}<br />
<br />
{{FeatureDone|Port all of kdelibs from KIcon to QIcon / KDE:::icon(), then move KIcon out (easy)|David Faure}}<br />
<br />
{{FeatureDone|Port all uses of time_t to QDateTime (or qint64 when serializing). Ignore kdecore and karchive, other people are reworking these bits anyway.|David Gil}}<br />
<br />
{{FeatureDone|KGlobalSettings is initalized by KApplication. Find out if any parts of it work without that, and split it into parts that work without the initialization and parts that don't.<br />
Conclusion: Let's just bury KGlobalSettings 10m underground.<br />
https://git.reviewboard.kde.org/r/111348/|aleixpol@kde.org}}<br />
<br />
{{FeatureDone|Port away from and deprecate KHBox/KVBox|Albert Astals Cid}}<br />
<br />
{{FeatureDone|Port KStandardAction from KAction to QAction|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KTabBar to kde4support and port users in kdelibs to QTabbar. preferably KTabWidget should go the same way, but needs a feature in Qt (see the qt5.1 epic)|Kevin Kin-Foo}}<br />
<br />
{{FeatureInProgress|Use tr() again (rather than QCoreApplication::translate with empty context) in all tier1+tier2+staging frameworks (except the ones which will go to tier3, they can use i18n)|George Goldberg (grundleborg)<br />
<br />
done, however there are some incorrect uses of QObject::tr() still floating around which need fixing in a later patch.}}<br />
<br />
{{FeatureDone|Move KDialog to kde4support (once all other KDialog related cleanups are done)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KRestrictedLine to kde4support|Kevin Kin-Foo}}<br />
<br />
{{FeatureDone|Move KDialogButtonBox to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KDoubleValidator to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Move KListWidget to kde4support (replace uses with QListWidget)|Martin Klapetek}}<br />
<br />
{{FeatureDone|Move KMenu to kde4support (once QMenu supports title items and keyboard navigation)|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KPushButton DnD support to an event filter|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KPushButton DnD and delayed menu support are out, move KPushButton to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KSplashScreen to kde4support|David Faure}}<br />
<br />
{{FeatureDone|Replace KUndoStack with two methods in a namespace|Tobias Koenig}}<br />
<br />
{{FeatureDone|Move KShortcut in kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move all global shortcut facilities of KAction in KGlobalAccel (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move all gesture facilities of KAction in KGestureMap (which would then register QActions)|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KAction::event to an event filter, see how to make it available to all QAction instances when using the consistency framework|Kevin Ottens}}<br />
<br />
{{FeatureDone|Once KAction has no original feature left, move it to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*Timestamp methods go to a new QObject subclass in tier4/kinterprocesswindowing|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::sessionConfig go to kconfig-gui, probably has a static method there|Kevin Ottens}}<br />
<br />
{{FeatureDone|KApplication::*startupId go with KStartupInfo to kwindowsystem|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KApplication to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KStatusBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KColorDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KMenuBar to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureDone|Move KToolBar to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KMainWindow to xmlgui|Miquel i Aleix}}<br />
<br />
{{FeatureDone|Move KInputDialog to kde4support once its features are in Qt (see the Contributions to Qt5 epic)| David Gil}}<br />
<br />
{{FeatureTodo|Move KDateTime to kde4support once its features are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureDone|Split WId methods of KMessageBox into tier4/kinterprocesswindowing|Valentin Rusu}}<br />
<br />
{{FeatureDone|Split queued methods of KMessageBox into kde4support|Valentin Rusu}}<br />
<br />
{{FeatureInProgress|Implement queueing directly in KDialogJobUiDelegate|Valentin Rusu}}<br />
<br />
{{FeatureDone|Add a KMessageBoxDontAskAgainInterface, with a QHash based private implementation in KMessageBox|David Faure}}<br />
<br />
{{FeatureDone|Add a setter to KMessageBox in order to change the KMessageBoxDontAskAgainInterface implementation used by KMessageBox and an implementation set in our FrameworkIntegrationPlugin which uses KConfig|David Faure}}<br />
<br />
{{FeatureDone|Move rest of KMessageBox to kwidgets|Valentin Rusu}}<br />
<br />
{{FeatureDone|Move KProgressDialog to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Move KFileDialog to kde4support once the QUrl static methods are in Qt (see the 5.1 epic)|?}}<br />
<br />
{{FeatureInProgress|Have KMessageWidget look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Have KMainWindow look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|Àlex Fiestas}}<br />
<br />
{{FeatureDone|Move KFadeWidgetEffect to kde4support|Kevin Ottens}}<br />
<br />
{{FeatureTodo|Have KIO widgets look at the styleHint() flag to decide to animate or not (not existing yet, see 5.1 epic)|afiestas@kde.org}}<br />
<br />
{{FeatureTodo|Have the polish() call of KStyle force the default fonts on widgets (font are picked in the same way KGlobalSettings <br />
did)|?}}<br />
<br />
{{FeatureTodo|Have a way to trigger the reloading of the toolbar settings, was done by KGlobalSettings::toolbarAppareanceChanged. Unittested by ktoolbar_unittest. A simple DBus signal could do.)|?}}<br />
<br />
{{FeatureInProgress|Implement KStyle::styleHint() to support the opaqueResize and animate flags (not existing yet, see 5.1 epic) value of those flags picked like KGlobalSettings did|Àlex Fiestas}}<br />
<br />
{{FeatureInProgress|Port uses of KGlobalSettings::(in)active(Title/Text)Color() in khtml to use KColorScheme instead|afiestas@kde.org https://git.reviewboard.kde.org/r/111171/}}<br />
<br />
{{FeatureInProgress|KGlobalSettings font methods: Make sure that kdeplatformtheme loads the font settings properly. Waiting for https://codereview.qt-project.org/#change,59808|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|KGlobalSettings::isMultiHead should be duplicated in plasma-framework, it only reads an environment variable, should see how to translate the Windows version|?}}<br />
<br />
{{FeatureInProgress|KGlobalSettings::createApplicationPalette/createNewApplicationPalette: Make sure that kdeplatformtheme provides what we need<br />
https://git.reviewboard.kde.org/r/111405/|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Move KGlobalSettings to kde4support. Depends on many other tasks here|?}}<br />
<br />
{{FeatureTodo|Move KStyle to tier4/consistency|?}}<br />
<br />
{{FeatureDone|Import QCommandLineArguments from gitorious into libkdeqt5staging|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCrash|David Faure}}<br />
<br />
{{FeatureDone|Use Q_COREAPP_STARTUP_FUNCTION to initialize KCheckAccelerators|David Faure}}<br />
<br />
{{FeatureDone|Add the necessary to the integration plugin so that calling QDesktopServices::openUrl("help:/") is exactly the same as using KHelpClient::invokeHelp()<br />
https://git.reviewboard.kde.org/r/111298/<br />
|aleixpol@kde.org}}<br />
<br />
{{FeatureTodo|Make KLocalizedString::isApplicationTranslatedInto and QLocale::uiLanguages codes compatible. See https://git.reviewboard.kde.org/r/111178|?}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=33130Frameworks/Epics/KDEUI Crumble2013-07-11T15:09:55Z<p>Wojtask9: /* KWidgetsAddons */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectDone|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456], [https://git.reviewboard.kde.org/r/110840/ Review 110840]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmessagewidget.h|https://git.reviewboard.kde.org/r/111319/|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|http://git.reviewboard.kde.org/r/111453|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|KColorButton uses all functions from KColorMimeData namespace|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectDone|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |https://git.reviewboard.kde.org/r/111408/|aleixpol@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |https://git.reviewboard.kde.org/r/111456/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/krichtextwidget.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/nestedlisthelper.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/krichtextedit.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/klinkdialog.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=33101Frameworks/Epics/KDEUI Crumble2013-07-08T16:43:42Z<p>Wojtask9: /* KDE4Support */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectDone|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456], [https://git.reviewboard.kde.org/r/110840/ Review 110840]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmessagewidget.h|https://git.reviewboard.kde.org/r/111319/|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|KColorButton uses all functions from KColorMimeData namespace|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectDone|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |https://git.reviewboard.kde.org/r/111408/|aleixpol@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/krichtextwidget.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/nestedlisthelper.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/krichtextedit.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/klinkdialog.h |https://git.reviewboard.kde.org/r/111424/|scarpino@kde.org}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32890Frameworks/Epics/KDEUI Crumble2013-07-02T14:14:21Z<p>Wojtask9: /* KWidgetsAddons */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved [https://git.reviewboard.kde.org/r/110840/ Review 110840])|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h|https://git.reviewboard.kde.org/r/111319/|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|KColorButton uses all functions from KColorMimeData namespace|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32875Frameworks/Epics/KDEUI Crumble2013-07-01T16:45:08Z<p>Wojtask9: /* KWidgetsAddons */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved [https://git.reviewboard.kde.org/r/110840/ Review 110840])|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h|https://git.reviewboard.kde.org/r/111319/|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|KColorButton uses all functions from KColorMimeData namespace|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32869Frameworks/Epics/KDEUI Crumble2013-07-01T14:51:24Z<p>Wojtask9: /* KGuiAddons */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved [https://git.reviewboard.kde.org/r/110840/ Review 110840])|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h|https://git.reviewboard.kde.org/r/111319/|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32854Frameworks/Epics/KDEUI Crumble2013-06-30T22:40:45Z<p>Wojtask9: /* KWidgetsAddons */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved [https://git.reviewboard.kde.org/r/110840/ Review 110840])|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h|https://git.reviewboard.kde.org/r/111319/|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32793Frameworks/Epics/KDEUI Crumble2013-06-27T23:41:11Z<p>Wojtask9: /* KDE4Support */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved [https://git.reviewboard.kde.org/r/110840/ Review 110840])|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32792Frameworks/Epics/KDEUI Crumble2013-06-27T21:57:46Z<p>Wojtask9: /* KCompletion */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved)|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32791Frameworks/Epics/KDEUI Crumble2013-06-27T21:57:12Z<p>Wojtask9: /* KGuiAddons */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved)|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|https://git.reviewboard.kde.org/r/111270/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32758Frameworks/Epics/KDEUI Crumble2013-06-26T23:34:34Z<p>Wojtask9: /* KGuiAddons */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved)|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kassistantdialog.h |https://git.reviewboard.kde.org/r/111250/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectDone|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32683Frameworks/Epics/KDEUI Crumble2013-06-25T16:08:12Z<p>Wojtask9: /* KDE4Support */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456] (wk:not moved)|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectInProgress|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectInProgress|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32665Frameworks/Epics/KDEUI Crumble2013-06-25T11:44:32Z<p>Wojtask9: /* KCompletion */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectDone|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./widgets/khistorycombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcombobox.h |[https://git.reviewboard.kde.org/r/111236/ Review 111236]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectInProgress|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectInProgress|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32661Frameworks/Epics/KDEUI Crumble2013-06-25T10:26:22Z<p>Wojtask9: /* KCompletion */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectDone|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|https://git.reviewboard.kde.org/r/111183/|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./widgets/khistorycombobox.h |Needs KComboBox to be moved first|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcombobox.h |Needs KCompletionBox to be moved first|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |[https://git.reviewboard.kde.org/r/111232/ Review 111232]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialog.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectInProgress|./icons/kiconbutton.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectInProgress|./icons/kicondialog.h |https://git.reviewboard.kde.org/r/111175/|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |Depends on kactioncollection |null@kde.org}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |Depends on kactioncollection|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |https://git.reviewboard.kde.org/r/111210/|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |https://git.reviewboard.kde.org/r/111191/|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32587Frameworks/Epics/KDEUI Crumble2013-06-22T11:24:45Z<p>Wojtask9: /* KCompletion */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectDone|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|aacid@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/ktip.h |https://git.reviewboard.kde.org/r/111170/|miquelcanes@gmail.com}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./widgets/khistorycombobox.h |Needs KComboBox to be moved first|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcombobox.h |Needs KCompletionBox to be moved first|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectInProgress|./icons/kiconbutton.h |...|miquelcanes@gmail.com|null}}<br />
{{FeatureProjectInProgress|./icons/kicondialog.h |...|miquelcanes@gmail.com|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h||scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kshortcutwidget.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./util/kundoactions.h |...|albertvaka@gmail.com}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |...|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32574Frameworks/Epics/KDEUI Crumble2013-06-22T01:02:33Z<p>Wojtask9: /* KCompletion */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectDone|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h||scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |...|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32573Frameworks/Epics/KDEUI Crumble2013-06-22T01:01:50Z<p>Wojtask9: /* KCompletion */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectDone|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectDone|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|null@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kbugreport.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/khelpmenu.h||scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutseditor.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kshortcutsdialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./dialogs/kedittoolbar.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kkeysequencewidget.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./kdepackages.h (goes with kbugreport)|...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiclient.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguiwindow.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguifactory.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kmainwindow.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/kxmlguibuilder.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./xmlgui/ktoolbar.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/kactioncollection.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/ktoggletoolbaraction.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./actions/kactioncategory.h |...|scarpino@kde.org}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./findreplace/kfinddialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplacedialog.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kfind.h |...|scarpino@kde.org}}<br />
{{FeatureProjectInProgress|./findreplace/kreplace.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/ktextedit.h |...|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32484Frameworks/Epics/KDEUI Crumble2013-06-20T08:36:30Z<p>Wojtask9: /* KWallet */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectTodo|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907] - should be moved to KDE4Attic instead|null@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectInProgress|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h||scarpino@kde.org}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32439Frameworks/Epics/KDEUI Crumble2013-06-18T21:44:12Z<p>Wojtask9: /* KWallet */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectTodo|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907] - should be moved to KDE4Attic instead|null@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|[https://git.reviewboard.kde.org/r/110997/ Review 110997] - Moving both kstringvalidator and kfilemetainfowidget to kde4support|luizromario@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectInProgress|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|scarpino@kde.org}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/ (got in kwidgets by mistake)|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997 (got in kwidgets by mistake)/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kwallet.h |[https://git.reviewboard.kde.org/r/111105/ Review 111105]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32428Frameworks/Epics/KDEUI Crumble2013-06-18T13:23:26Z<p>Wojtask9: /* KWallet */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907] - will be moved to KDE4Attic instead|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp (but it's not built)|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectInProgress|./widgets/kdatetable.h|used by kdatepicker|ervin@kde.org|Kevin Ottens}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kkeyserver_x11.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_win.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_mac.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver.h |https://git.reviewboard.kde.org/r/111028/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kxerrorhandler.h |https://git.reviewboard.kde.org/r/111086/|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kwallet.h |...|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32408Frameworks/Epics/KDEUI Crumble2013-06-17T15:28:16Z<p>Wojtask9: /* KConfigWidgets */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907] - will be moved to KDE4Attic instead|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kkeyserver_x11.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kxerrorhandler.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_win.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_mac.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32394Frameworks/Epics/KDEUI Crumble2013-06-17T11:20:43Z<p>Wojtask9: /* KJobWidgets */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907] - will be moved to KDE4Attic instead|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|also kmodifierkeyinfoprovider_p.h|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kkeyserver_x11.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kxerrorhandler.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_win.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_mac.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kcrash.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32342Frameworks/Epics/KDEUI Crumble2013-06-13T18:17:01Z<p>Wojtask9: /* KJobWidgets */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907] - will be moved to KDE4Attic instead|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kkeyserver_x11.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kxerrorhandler.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_win.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_mac.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./jobs/kwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kabstractwidgetjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kdialogjobuidelegate.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kstatusbarjobtracker.h |[https://git.reviewboard.kde.org/r/110995 Review: 110995]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32341Frameworks/Epics/KDEUI Crumble2013-06-13T18:16:00Z<p>Wojtask9: /* KConfigWidgets */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectDone|./dialogs/kinputdialog.h deprecated for QInputDialog|[https://git.reviewboard.kde.org/r/110874 Review 110874]|davidgiloliva@gmail.com|David Gil}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907] - will be moved to KDE4Attic instead|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |https://git.reviewboard.kde.org/r/110997/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./actions/kactionmenu.h |https://git.reviewboard.kde.org/r/110963|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/ktoolbarlabelaction.h |https://git.reviewboard.kde.org/r/110974/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./actions/ktoolbarpopupaction.h |https://git.reviewboard.kde.org/r/110983/|benjamin.port@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kkeyserver_x11.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kxerrorhandler.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_win.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver_mac.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kkeyserver.h |...|benjamin.port@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./itemviews/kviewstatesaver.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002] |wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kviewstatemaintainer.h |[https://git.reviewboard.kde.org/r/111002/ Review: 111002]|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./jobs/kwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kabstractwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kdialogjobuidelegate.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kstatusbarjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32285Frameworks/Epics/KDEUI Crumble2013-06-11T16:22:23Z<p>Wojtask9: /* KIconThemes */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./jobs/kwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kabstractwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kdialogjobuidelegate.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kstatusbarjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32283Frameworks/Epics/KDEUI Crumble2013-06-11T16:15:35Z<p>Wojtask9: /* ItemViews */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./jobs/kwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kabstractwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kdialogjobuidelegate.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kstatusbarjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32282Frameworks/Epics/KDEUI Crumble2013-06-11T16:15:12Z<p>Wojtask9: /* ItemViews */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./jobs/kwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kabstractwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kdialogjobuidelegate.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kstatusbarjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32281Frameworks/Epics/KDEUI Crumble2013-06-11T16:14:54Z<p>Wojtask9: /* ItemViews */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectDone|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] |annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |[https://git.reviewboard.kde.org/r/110415/ Review 110415]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h|used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h|used by kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kmultitabbar.h: used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...|[https://git.reviewboard.kde.org/r/110939/ Review 110939]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |[https://git.reviewboard.kde.org/r/110447/ Review 110447]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |[https://git.reviewboard.kde.org/r/110451/ Review 110451]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |[https://git.reviewboard.kde.org/r/110457/ Review 110457]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./widgets/kcharselect.h: can soon go into kwidgetsaddons (needs clear button in QLineEdit)|[https://git.reviewboard.kde.org/r/110942/ Review 110942]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h|used in kdeui/dialogs/kswitchlanguagedialog_p.cpp, which is used by kdeui/widgets/khelpmenu.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h: only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h|use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h: needs polish before it can be resurrected|used by KShortcutsEditor and staging/kde4support/src/kdeui/kaction|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kassistantdialog.h |...|benjamin.port@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Need port away form KStringHandler (see Qt contributions)?<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./jobs/kwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kabstractwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kdialogjobuidelegate.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kstatusbarjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/Contributions_to_Qt5&diff=32280Frameworks/Epics/Contributions to Qt52013-06-11T16:12:49Z<p>Wojtask9: /* Contributing to Qt 5 epic */</p>
<hr />
<div>= Contributing to Qt 5 epic =<br />
<br />
Quite some effort goes into Qt 5 in order to push into Qt some of the features which should be in Qt and not in KDE Frameworks. Usually because all Qt apps would benefit from them even outside the KDE world, and because this cuts dependencies between the KDE frameworks.<br />
<br />
Once a class is ready to be contributed into Qt, it can also be added to KDE frameworks in libkdeqt5staging/src, for immediate use in kdelibs-frameworks.<br />
When we can depend on the Qt5 version that has the class, we can remove it from libkdeqt5staging.<br />
<br />
If the addition to Qt is a new method rather than a new class, then an intermediate solution has to be found (possibly with a different API).<br />
<br />
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;"<br />
|- style="background: #ececec; white-space:nowrap;"<br />
! Status<br />
! Description<br />
! width=120 | Contact<br />
|-<br />
{{FeatureDone|QStandardPaths|David Faure, in Qt 5.0}}<br />
{{FeatureDone|QTemporaryFile (better defaults)|David Faure, in Qt 5.0}}<br />
{{FeatureDone|QObject::findChildren(Qt::FindDirectChildrenOnly)|David Faure, in Qt 5.0}}<br />
{{FeatureDone|QTemporaryDir|David Faure, in Qt 5.0}}<br />
{{FeatureDone|QMimeData: export URLs as plain text too|David Faure, in Qt 5.0}}<br />
{{FeatureDone|QCryptographicHash: QIODevice support, to replace KMD5| Sune, in Qt 5.0}}<br />
{{FeatureDone|Contact John Layt to get an [http://mail.kde.org/pipermail/kde-frameworks-devel/2012-January/000174.html update] on locales/datetime|Mario Fux}}<br />
{{FeatureDone|Refcounted quit|Stephen Kelly, change 10408, in Qt 5.0}}<br />
{{FeatureDone|QMimeType|David Faure, change 15585, in Qt 5.0}}<br />
{{FeatureDone|KUrl/QUrl merge|David Faure and Thiago Macieira (QUrl), in Qt 5.0}}<br />
{{FeatureDone|KDebug features into QDebug|Started by Kai Koehne (Nokia) in change 13433, then Wolfgang Beck implemented category logging (13226), and an addon for the API (see QTBUG-19536). Missing API in Qt itself -> 5.1}}<br />
{{FeatureDone|Native event filtering in QCoreApplication|David Faure, change 29260, in Qt 5.0}}<br />
{{FeatureDone|QSignalSpy::wait (replaces kWaitForSignal)|David Faure, change 30799, in Qt 5.0}}<br />
{{FeatureDone|Add app display name to window titles|David Faure, change 42627, in Qt 5.0}}<br />
{{FeatureDone|QSaveFile|David Faure (https://codereview.qt-project.org/41790), in Qt 5.1}}<br />
{{FeatureDone|Add a Q_COREAPP_STARTUP_FUNCTION macro which allows to have code called just at the end of QCoreApplicationPrivate::init()|David Faure (https://codereview.qt-project.org/42002), in Qt 5.1}}<br />
{{FeatureDone|QDebugStateSaver|David Faure (https://codereview.qt-project.org/41793), in Qt 5.1}}<br />
{{FeatureDone|K/Q_GLOBAL_STATIC merge|Thiago Macieira (https://codereview.qt-project.org/43297), in Qt 5.1}}<br />
{{FeatureDone|qunsetenv|David Faure (https://codereview.qt-project.org/44599), in Qt 5.1}}<br />
{{FeatureDone|Restore QX11Info, in qtx11extras.git|Richard Moore and David Faure (https://codereview.qt-project.org/45266), in Qt 5.1}}<br />
{{FeatureDone|QLockFile|David Faure (https://codereview.qt-project.org/46583), in Qt 5.1}}<br />
{{FeatureDone|QDebug: coloring the method name (blue for debugs, red for warnings)|Olivier Goffart (https://codereview.qt-project.org/47358), in Qt 5.1}}<br />
{{FeatureDone|QKeySequence to/from string|Kévin Ottens}}<br />
{{FeatureDone|QMenu: title feature|Kévin Ottens (https://codereview.qt-project.org/49242)}}<br />
{{FeatureDone|QMenu: keyboard navigation (from KMenu)|Kevin Ottens}}<br />
{{FeatureDone|Create QPA theme plugin for setting KDE palette, font, widget style, etc. (in KDE), will require extensions on the Qt side, look at KGlobalSettings, some of it is there|Kevin Ottens}}<br />
{{FeatureDone|Extend QPA theme plugin to use KIconLoader within QIcon::fromTheme()|Kevin Ottens}}<br />
{{FeatureDone|QTabWidget: give the possibility to hide the tabbar (used in many places if count is 0). Preferably called setTabBarHidden(bool) / isTabBarHidden() (then deprecate ktabwidget). RESULT: Since the exact same functionality can be achieved with tabBar()->hide(bool) and tabBar()->isHidden(), no methods have been added to QTabWidget and both KTabWidget methods have been deprecated.|David Gil}}<br />
{{FeatureDone|Make sure QDesktopServices can list the protocols it supports|Kevin Ottens (Turns out it's not even possible to know before hand with xdg-open for a start... It's not really essential anyway: cancelled)}}<br />
{{FeatureDone|Add support for default vs active shortcuts to QAction (implemented in KActionCollection instead)|Kevin Ottens}}<br />
<br />
{{FeatureInProgress|QUrl methods to replace the QUrlPathInfo attempt|David Faure (https://codereview.qt-project.org/44960)}}<br />
{{FeatureInProgress|QCommandLineParser|Laszlo Papp (initially) / David Faure (now); see qtbase cli_parser branch (including pending review requests) and libkdeqt5staging in kdelibs}}<br />
{{FeatureTodo|QSqueezedTextLabel, or squeezing in QLabel|?}}<br />
{{FeatureTodo|QFileSystemWatcher: support for watching non-existing files|David Faure}}<br />
{{FeatureTodo|QCompleter: many missing features compared to KCompletion. Look at the completion model in http://qt-project.org/wiki/Qt-5-Ui-Helpers as a possible replacement which would also work for QML.|?}}<br />
{{FeatureTodo|QLocalSocket/QLocalServer: support for abstract unix sockets|Thiago?}}<br />
{{FeatureTodo|KProcess/KShell features in Qt?|Ossi}}<br />
{{FeatureTodo|KProcess ForwardOnlyStdErr/ForwardOnlyStdOut features in Qt?|?}}<br />
{{FeatureTodo|QCursor: auto-hide support (see KCursor API), plus styleHint to enable this in QLineEdit/QTextEdit (and let users turn this on/off in KConfig)|?}}<br />
{{FeatureTodo|QCursor: theme support|?}}<br />
{{FeatureTodo|QIcon: support for overlays|?}}<br />
{{FeatureTodo|QPushButton: support for delayed menu|?}}<br />
{{FeatureTodo|QSystemTray: support for the new dbus protocol (see KStatusNotifierItem)|?}}<br />
{{FeatureTodo|contribute natural-comparison to Qt5 (see KStringHandler). In Qt there is naturalCompare function but private and not as good as from KStringHandler|?}}<br />
{{FeatureTodo|QRecursiveFilterProxyModel|Stephen Kelly?}}<br />
{{FeatureTodo|QPoTranslator (support for .po files, and locating them with QStandardPaths, so that libs can load them?)|??}}<br />
{{FeatureInProgress|QLineEdit: support for clear button|Kevin Ottens https://codereview.qt-project.org/53155 + https://codereview.qt-project.org/53073}}<br />
{{FeatureDone|QLineEdit: support for text squeezing|Kevin Ottens (only one user and half-broken feature anyway, cancelled)}}<br />
{{FeatureTodo|QLineEdit: support for URL drops (replace existing text, rather than append)|??}}<br />
{{FeatureTodo|QComboBox: support for URL drops (replace existing text, rather than append)|??}}<br />
{{FeatureInProgress|QTextEdit: support for place holder text like place holder text in QLineEdit|Benjamin Port (https://codereview.qt-project.org/#change,53423)}}<br />
{{FeatureInProgress|QTimeZone|John Layt}}<br />
{{FeatureTodo|QLocale|John Layt}}<br />
{{FeatureTodo|Printing|John Layt}}<br />
{{FeatureInProgress|qDebug with categories, currently in an addon (playground/qlogger.git), plan is to have it in 5.1 |Wolfgang Beck, QTBUG-19536}}<br />
{{FeatureTodo|Merge KStandardShortcut and QKeySequence::StandardKey|??}}<br />
{{FeatureTodo|Rewrite QKeySequence::StandardKey to get the default keys from QPA, not just an enum. In KDE we can make the shortcuts configurable this way.|??}}<br />
{{FeatureInProgress|QTabBar: port signals from KTabBar|Ivan Komissarov (https://codereview.qt-project.org/#change,29650)}}<br />
{{FeatureDone|Add the web color line edit to QColorDialog (KColorDialog has it)|David Gil (https://codereview.qt-project.org/53239) in Qt 5.2}}<br />
{{FeatureDone|Add the color picker button to QColorDialog (KColorDialog has it)|David Gil (https://codereview.qt-project.org/53242) in Qt 5.2}}<br />
{{FeatureTodo|Make sure we have a QAction independent of QtWidgets in QtGui|??}}<br />
{{FeatureTodo|QToolBar should take its default settings from the global settings when running in a Plasma Workspace session (see loadKDESettings from KToolBar)|??}}<br />
{{FeatureTodo|QMainWindow should follow the KDE HIG when changing the window title in a Plasma Workspace session (see KMainWindow::setCaption)|??}}<br />
{{FeatureTodo|Support for timer-based auto-selection in QAbstractItemView (triggered by styleHint, like QStyle::SH_ItemView_ActivateItemOnSingleClick triggers single-click mode)|??}}<br />
{{FeatureDone|QInputDialog should have an equivalent of KInputDialog::getMultiLineText|David Gil (https://codereview.qt-project.org/55905) in Qt 5.2}}<br />
{{FeatureDone|QInputDialog should have an equivalent of KInputDialog::getDouble with configurable step. RESULT: it's not really used and adding a step parameter or a new method makes the API ugly. Therefore, I abandon the patch.|David Gil (https://codereview.qt-project.org/54378)}}<br />
{{FeatureDone|For better usability, QInputDialog::getItem should use a QListView instead of a QComboBox, like KInputDialog::getItemList. RESULT: Abandoned. Adding another static method to QInputDialog is not needed, since the same result can be achieved with QInputDialog::setOption(QInputDialog::UseListViewForComboBoxItems)|David Gil}}<br />
{{FeatureDone|QFileDialog: add the QUrl equivalents of KFileDialog static methods to QFileDialog, should be possible to specify a optional list of protocols supported by the user code|Kevin Ottens (https://codereview.qt-project.org/51031)}}<br />
{{FeatureTodo|QFileDialog: add QUrl based API for the non-static use of QFileDialog (as mentionned on (https://codereview.qt-project.org/51031)|Kevin Ottens}}<br />
{{FeatureDone|Make sure QNetworkAccessManager can list the protocols it supports|Kevin Ottens (https://codereview.qt-project.org/51088)}}<br />
{{FeatureTodo|Add icons to QLineEdit context menu (via qstyle?)|??}}<br />
{{FeatureTodo|Add icons to QTextBrowser context menu (via qstyle?)|??}}<br />
{{FeatureTodo|Add support for "whatsthis:/text" urls to QTextBrowser|??}}<br />
{{FeatureTodo|Make sure QTextBrowser automatically follows KDE settings for the wheel button behavior (scroll vs zoom) via backend|??}}<br />
{{FeatureTodo|Allow to register a default syntax highlighter type for QTextEdit, the KDE backend would register the spell checking one coming from sonnet as default|??}}<br />
{{FeatureTodo|KSsl*/QSsl* merge|Richard Moore}}<br />
{{FeatureTodo|Make sure the QPA plugin can properly react to setting changes|?}}<br />
{{FeatureDone|Restore the getenv+unsetenv _NET_STARTUP_INFO from Qt4 that got lost (work for the xcb backend, next step is using it kdbusservice.cpp)|David Faure (https://codereview.qt-project.org/54499)}}<br />
{{FeatureTodo|Restore QSessionManager from Qt4 that got broken|?}}<br />
{{FeatureInProgress|Extend the QStyle API so that the styleHint() can control the default value for animated widgets (should animate or not by default?)|Àlex Fiestas}}<br />
{{FeatureTodo|Extend the QStyle API so that the styleHint() can control the default value QSplitter::opaqueResize|?}}<br />
{{FeatureTodo|Make sure QDialogButtonBox Ok button has Ctrl+Return as shortcut|?}}<br />
{{FeatureTodo|Implement an equivalent of KPluginFactory for the new plugin system so that one module can contain more than one plugin type and create several instance|?}}<br />
{{FeatureInProgress|Add a "base" property to QSpinBox|Kevin Ottens}}<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32242Frameworks/Epics/KDEUI Crumble2013-06-10T13:37:45Z<p>Wojtask9: /* KJobWidgets */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectInProgress|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|[https://git.reviewboard.kde.org/r/110907/ Review 110907]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectInProgress|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] Waiting Monday 3rd June before pushing so people have time to update their Qt5|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |https://git.reviewboard.kde.org/r/110415/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h |used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmultitabbar.h (used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |http://git.reviewboard.kde.org/r/110447/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |http://git.reviewboard.kde.org/r/110451/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |https://git.reviewboard.kde.org/r/110457/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcharselect.h Can soon go into kwidgetsaddons (needs clear button in QLineEdit)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h |used in kdeui/dialogs/kswitchlanguagedialog_p.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h |See kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h needs polish before it can be resurrected|...|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kmodifierkeyinfo.h|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectTodo|./dialogs/kassistantdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Is port away form KStringHandler needed?<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./jobs/kwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kabstractwidgetjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kdialogjobuidelegate.h |...|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./jobs/kstatusbarjobtracker.h |...|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32161Frameworks/Epics/KDEUI Crumble2013-06-06T14:15:26Z<p>Wojtask9: /* ItemViews */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectTodo|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectInProgress|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] Waiting Monday 3rd June before pushing so people have time to update their Qt5|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |https://git.reviewboard.kde.org/r/110415/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h |used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmultitabbar.h (used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |http://git.reviewboard.kde.org/r/110447/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |http://git.reviewboard.kde.org/r/110451/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |https://git.reviewboard.kde.org/r/110457/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcharselect.h Can soon go into kwidgetsaddons (needs clear button in QLineEdit)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h |used in kdeui/dialogs/kswitchlanguagedialog_p.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h |See kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h needs polish before it can be resurrected|...|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|...|scarpino@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectTodo|./dialogs/kassistantdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110837/ 110837], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Is port away form KStringHandler needed?<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./jobs/kwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kabstractwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kdialogjobuidelegate.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kstatusbarjobtracker.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32160Frameworks/Epics/KDEUI Crumble2013-06-06T13:31:37Z<p>Wojtask9: /* KIconThemes */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectTodo|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectInProgress|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] Waiting Monday 3rd June before pushing so people have time to update their Qt5|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |https://git.reviewboard.kde.org/r/110415/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h |used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmultitabbar.h (used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |http://git.reviewboard.kde.org/r/110447/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |http://git.reviewboard.kde.org/r/110451/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |https://git.reviewboard.kde.org/r/110457/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcharselect.h Can soon go into kwidgetsaddons (needs clear button in QLineEdit)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h |used in kdeui/dialogs/kswitchlanguagedialog_p.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h |See kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h needs polish before it can be resurrected|...|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|...|scarpino@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectTodo|./dialogs/kassistantdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Is port away form KStringHandler needed?<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./jobs/kwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kabstractwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kdialogjobuidelegate.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kstatusbarjobtracker.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32159Frameworks/Epics/KDEUI Crumble2013-06-06T13:14:48Z<p>Wojtask9: /* KIconThemes */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectTodo|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectInProgress|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] Waiting Monday 3rd June before pushing so people have time to update their Qt5|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |https://git.reviewboard.kde.org/r/110415/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h |used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmultitabbar.h (used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |http://git.reviewboard.kde.org/r/110447/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |http://git.reviewboard.kde.org/r/110451/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |https://git.reviewboard.kde.org/r/110457/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcharselect.h Can soon go into kwidgetsaddons (needs clear button in QLineEdit)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h |used in kdeui/dialogs/kswitchlanguagedialog_p.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h |See kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h needs polish before it can be resurrected|...|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|...|scarpino@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectTodo|./dialogs/kassistantdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Is port away form KStringHandler needed?<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |[https://git.reviewboard.kde.org/r/110733 Review 110733]|null}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |see http://www.mail-archive.com/kde-frameworks-devel@kde.org/msg02772.html|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./jobs/kwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kabstractwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kdialogjobuidelegate.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kstatusbarjobtracker.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32153Frameworks/Epics/KDEUI Crumble2013-06-06T12:06:46Z<p>Wojtask9: /* ItemViews */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectTodo|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectInProgress|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] Waiting Monday 3rd June before pushing so people have time to update their Qt5|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |https://git.reviewboard.kde.org/r/110415/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h |used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmultitabbar.h (used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |http://git.reviewboard.kde.org/r/110447/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |http://git.reviewboard.kde.org/r/110451/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |https://git.reviewboard.kde.org/r/110457/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcharselect.h Can soon go into kwidgetsaddons (needs clear button in QLineEdit)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h |used in kdeui/dialogs/kswitchlanguagedialog_p.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h |See kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h needs polish before it can be resurrected|...|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|...|scarpino@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectTodo|./dialogs/kassistantdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110845]<br />
Is port away form KStringHandler needed?<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |https://git.reviewboard.kde.org/r/110733/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |https://git.reviewboard.kde.org/r/110733/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |https://git.reviewboard.kde.org/r/110733/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./jobs/kwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kabstractwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kdialogjobuidelegate.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kstatusbarjobtracker.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9https://community.kde.org/index.php?title=Frameworks/Epics/KDEUI_Crumble&diff=32152Frameworks/Epics/KDEUI Crumble2013-06-06T12:02:23Z<p>Wojtask9: /* ItemViews */</p>
<hr />
<div>= KDEUI Crumble =<br />
<br />
This page is the battle plan to finally get rid of KDEUI in kdelibs/frameworks. It lists the header name of all the classes in kdeui, they are sorted in sections per new destination for them.<br />
<br />
Each section tries to also provide simple indications of the contraints to follow during the move (mostly about dependencies). If a class is not fitting one of the constraints, it is part of the job to first reduce the dependencies of the class to fit the contraints prior to the move. If you are too blocked to carry on, please add a note for the class.<br />
<br />
The sections are roughly sorted by order of difficulty. The classes in the first sections should be reasonably easy to move, while the ones in the last sections are more challenging.<br />
<br />
Tip: you can use [http://lxr.kde.org/ http://lxr.kde.org/] to find out where in KDE the class is used.<br />
<br />
== KDE4Support ==<br />
<br />
Points to verify before moving the class in KDE4Support:<br />
* Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs<br />
* Don't forget to change the export in the moved header<br />
* Add API doc in the header file about it being deprecated and indicate how to port<br />
* Look at the bug reports for the component <br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontdialog.h deprecated for QFontDialog|[https://git.reviewboard.kde.org/r/110351/ Review 110351]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./fonts/kfontcombobox.h deprecated for QFontComboBox|[https://git.reviewboard.kde.org/r/110456/ Review 110456]|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectInProgress|./dialogs/kinputdialog.h deprecated for QInputDialog|David Gil|davidgiloliva@gmail.com|null}}<br />
{{FeatureProjectTodo|./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistbox.h deprecated for KEditListWidget|[https://git.reviewboard.kde.org/r/110464/ Review 110464]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktabbar.h deprecated for QTabBar|[https://git.reviewboard.kde.org/r/110460/ Review 110460]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./widgets/ktabwidget.h deprecated for QTabWidget|...|sebas@kde.org|sebas}}<br />
{{FeatureProjectInProgress|./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye|[https://git.reviewboard.kde.org/r/110478/ Review 110478]|annma@kde.org}}<br />
{{FeatureProjectInProgress|./widgets/knuminput.h Use real QSpinBox |[https://git.reviewboard.kde.org/r/110418/ Review 110418] Waiting Monday 3rd June before pushing so people have time to update their Qt5|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktextbrowser.h deprecated for QTextBrowser|[https://git.reviewboard.kde.org/r/110437/ Review 110437]|annma@kde.org}}<br />
{{FeatureProjectDone|./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache|[https://git.reviewboard.kde.org/r/110500/ Review 110500]|alex.merry@kdemail.net|null}}<br />
{{FeatureProjectDone|./util/kaccelgen.h |[https://git.reviewboard.kde.org/r/110540/ Review 110540]|alex.merry@kdemail.net|null}}<br />
|}<br />
<br />
== KDE4Attic ==<br />
<br />
Points to verify before moving the class in KDE4Attic [[http://community.kde.org/Frameworks/Terminology#KDE4Attic]]:<br />
* Make sure the class is not used anywhere in kdelibs anymore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./widgets/kdatetimeedit.h |https://git.reviewboard.kde.org/r/110415/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kdatepicker.h |used in security/crypto/kdatetimedlg.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmultitabbar.h (used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatecombobox.h |http://git.reviewboard.kde.org/r/110447/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/ktimezonewidget.h |http://git.reviewboard.kde.org/r/110451/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./widgets/kdatetimewidget.h |https://git.reviewboard.kde.org/r/110457/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./widgets/kcharselect.h Can soon go into kwidgetsaddons (needs clear button in QLineEdit)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kdatewidget.h |[https://git.reviewboard.kde.org/r/110622/ Review 110622]|annma@kde.org}}<br />
{{FeatureProjectDone|./widgets/ktimecombobox.h |[http://git.reviewboard.kde.org/r/110477/ Review 110477]|annma@kde.org}}<br />
{{FeatureProjectTodo|./widgets/klanguagebutton.h |used in kdeui/dialogs/kswitchlanguagedialog_p.cpp|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kdatetable.h |See kdatepicker|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kpassivepopupmessagehandler.h only user is kde-runtime/knotify. Move it there?|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesture.h use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kgesturemap.h needs polish before it can be resurrected|...|null@kde.org|null}}<br />
|}<br />
<br />
== KGuiAddons ==<br />
<br />
Points to verify before moving a class in KGuiAddons:<br />
* It depends only on QtGui or QtCore, eventually QX11Info<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./util/kmodifierkeyinfo.h|...|scarpino@kde.org|null}}<br />
{{FeatureProjectDone|./fonts/kfontutils.h |[https://git.reviewboard.kde.org/r/110646/ 110646]|kurt.hindenburg@gmail.com|null}}<br />
{{FeatureProjectTodo|./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem)|...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgetsAddons ==<br />
<br />
Points to verify before moving a class in KWidgetsAddons:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWidgetsAddons, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./fonts/kfontrequester.h |...|davidedmundson@kde.org|David Edmundson}}<br />
{{FeatureProjectTodo|./dialogs/kassistantdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/knewpassworddialog.h |...|davidedmundson@kde.org|null}}<br />
{{FeatureProjectDone|./dialogs/kpassworddialog.h |https://git.reviewboard.kde.org/r/110643/|davidedmundson@kde.org|null}}<br />
{{FeatureProjectInProgress|./dialogs/kpixmapregionselectordialog.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./widgets/kpixmapregionselectorwidget.h |https://git.reviewboard.kde.org/r/110847/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/ktitlewidget.h |commit 44da8fea214dc41243c6aed9caa32e0cda7d3027|ervin@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingwidget.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kratingpainter.h |https://git.reviewboard.kde.org/r/110826/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap)|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/keditlistwidget.h |https://git.reviewboard.kde.org/r/110825/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./widgets/kactionselector.h |https://git.reviewboard.kde.org/r/110820/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./util/kpassivepopup.h |https://git.reviewboard.kde.org/r/110815/|aleixpol@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcursor.h |https://git.reviewboard.kde.org/r/110827/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidget.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagedialog.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpageview.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagemodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectInProgress|./paged/kpagewidgetmodel.h |Waiting for https://git.reviewboard.kde.org/r/110833/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./colors/kcolorbutton.h minor duplication of KcolorMimeData though|...|null@kde.org|null}}<br />
{{FeatureProjectDone|./colors/kcolorcombo.h |http://git.reviewboard.kde.org/r/110838/|aleixpol@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactionmenu.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarlabelaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoolbarpopupaction.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./actions/ktoolbarspaceraction.h |[https://git.reviewboard.kde.org/r/110674/ Review 110674]|aleixpol@kde.org|null}}<br />
<br />
|}<br />
<br />
== KWindowSystem ==<br />
<br />
Points to verify before moving a class in KWindowSystem:<br />
* It depends only on QtWidgets, QtGui or QtCore<br />
* It can depend on other classes in KWindowSystem, but that should be kept minimal<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kkeyserver_x11.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kxerrorhandler.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_win.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver_mac.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kkeyserver.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KWidgets ==<br />
<br />
Points to verify before moving a class in KWidgets:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use anything aimed at ItemViews<br />
* It doesn't use anything from kdecore<br />
* Using things from tier1 is fine<br />
* Using things from tier2 is forbidden<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kaboutapplicationdialog.h (probably difficult)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kbugreport.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/ktip.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/khelpmenu.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== ItemViews ==<br />
<br />
Points to verify before moving a class in ItemViews:<br />
* It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)<br />
* It doesn't use ki18n<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kwidgets<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./itemviews/kcategorizedview.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110825]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110825]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110825]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kwidgetitemdelegate.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110825]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110825]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./itemviews/kcategorydrawer.h |Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110825]|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectInProgress|./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler)|Review: [https://git.reviewboard.kde.org/r/110825/ 110825], [http://git.reviewboard.kde.org/r/110845/ 110825]<br />
Is port away form KStringHandler needed?<br />
|wojtask9.kde@gmail.com|null}}<br />
|}<br />
<br />
== KCompletion ==<br />
<br />
Points to verify before moving a class in KCompletion:<br />
* It doesn't use anything from kwidgets<br />
* It doesn't use anything from kdecore<br />
* It doesn't use anything from kdeui<br />
* Using things from tier1 is fine<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./widgets/khistorycombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcombobox.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/klineedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcompletionbox.h |...|null@kde.org|null}}<br />
{{FeatureProjectDone|./util/kcompletion.h move ksortablelist.h with it|...|ervin@kde.org|Kevin Ottens}}<br />
|}<br />
<br />
== KConfigWidgets ==<br />
<br />
Points to verify before moving a class in KConfigWidgets:<br />
* It uses only classes from kconfigcore, kconfigui or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
{{FeatureProjectInProgress|./dialogs/kconfigdialogmanager.h |old unit test crashes on load!|kde@davidedmundson.co.uk}}<br />
{{FeatureProjectTodo|./dialogs/kconfigdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kcmodule.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatesaver.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./itemviews/kviewstatemaintainer.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KCrash ==<br />
<br />
'''Important:''' At time of writing the KCrash framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KCrash:<br />
* It uses only classes from kcoreaddons or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kcrash.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KIconThemes ==<br />
<br />
Points to verify before moving a class in KIconThemes:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectDone|./util/kpixmapsequencewidget.h |https://git.reviewboard.kde.org/r/110733/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequenceoverlaypainter.h |https://git.reviewboard.kde.org/r/110733/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectDone|./util/kpixmapsequence.h |https://git.reviewboard.kde.org/r/110733/|wojtask9.kde@gmail.com|null}}<br />
{{FeatureProjectTodo|./icons/kiconbutton.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./icons/kicondialog.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KJobWidgets ==<br />
<br />
Points to verify before moving a class in KJobWidgets:<br />
* It uses only classes from Qt, kcoreaddons or kwidgetsaddons<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./jobs/kwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kabstractwidgetjobtracker.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kdialogjobuidelegate.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./jobs/kstatusbarjobtracker.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KNotifications ==<br />
<br />
Points to verify before moving a class in KNotifications:<br />
* It uses only classes from KWindowSystem, QtWidgets, QtDBus<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectInProgress|./notifications/kstatusnotifieritem.h |...|mart@kde.org|Marco Martin}}<br />
{{FeatureProjectInProgress|./notifications/knotificationrestrictions.h |...|mart@kde.org|Marco Martin}}<br />
|}<br />
<br />
== KWallet ==<br />
<br />
'''Important:''' At time of writing the KWallet framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KWallet:<br />
* It uses only classes from kconfigcore, kconfigui or kwindowsystem<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./util/kwallet.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== XmlGui ==<br />
<br />
Points to verify before moving a class in XmlGui:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./dialogs/kshortcutseditor.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kshortcutsdialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/kedittoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kshortcutwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/kkeysequencewidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./util/kundoactions.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./kdepackages.h (goes with kbugreport)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiclient.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguiwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguifactory.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kmainwindow.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/kxmlguibuilder.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./xmlgui/ktoolbar.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./shortcuts/kcheckaccelerators.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncollection.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/ktoggletoolbaraction.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./actions/kactioncategory.h |...|null@kde.org|null}}<br />
|}<br />
<br />
== KTextWidgets ==<br />
<br />
'''Important:''' At time of writing the KTextWidgets framework doesn't exist yet in staging, the person picking the first move task here would have to do that.<br />
<br />
Points to verify before moving a class in KTextWidgets:<br />
* It uses only classes from tier1 or tier2<br />
* It uses nothing from kdeui or kdecore<br />
<br />
<br />
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"<br />
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"<br />
<br />
! Status<br />
! width=250 | Description<br />
! width=250 | Notes<br />
! width=125 | Contact<br />
<br />
{{FeatureProjectTodo|./findreplace/kfinddialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplacedialog.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kfind.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./findreplace/kreplace.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextwidget.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/nestedlisthelper.h (goes with krichtextedit)|...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/ktextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./widgets/krichtextedit.h |...|null@kde.org|null}}<br />
{{FeatureProjectTodo|./dialogs/klinkdialog.h |It's not exported, but needed for KRichTextEdit|null@kde.org|null}}<br />
<br />
|}</div>Wojtask9