Jump to content

Frameworks/Epics/KDEUI Crumble

From KDE Community Wiki

KDEUI Crumble

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.

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.

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.

KDE4Support

Points to verify before moving the class in KDE4Support:

  • Make sure the class is used only in kde4support itself or kde4attic but not anywhere else in kdelibs


Status Description Contact
TO DO ./fonts/kfontdialog.h deprecated for QFontDialog ?? <{{{3}}}>
TO DO ./fonts/kfontcombobox.h deprecated for QFontComboBox ?? <{{{3}}}>
TO DO ./dialogs/kinputdialog.h deprecated for QInputDialog ?? <{{{3}}}>
TO DO ./dialogs/kdeprintdialog.h (should be done by Qt, kcups* goes with it) ?? <{{{3}}}>
TO DO ./widgets/keditlistbox.h deprecated for KEditListWidget ?? <{{{3}}}>
TO DO ./widgets/kstringvalidator.h only the zombie kfilemetainfowidget uses it ?? <{{{3}}}>
TO DO ./widgets/ktabbar.h deprecated for QTabBar ?? <{{{3}}}>
TO DO ./widgets/ktabwidget.h deprecated for QTabWidget ?? <{{{3}}}>
TO DO ./widgets/kbuttongroup.h Use real QGroupBox and QButtonGroup instances please, kthxbye ?? <{{{3}}}>
TO DO ./widgets/knuminput.h Use real QSpinBox ?? <{{{3}}}>
TO DO ./widgets/ktextbrowser.h deprecated for QTextBrowser ?? <{{{3}}}>
TO DO ./util/kpixmapcache.h deprecated for KImageCache or KSharedDataCache ?? <{{{3}}}>
TO DO ./util/kaccelgen.h ?? <{{{3}}}>
TO DO ./actions/ktoolbarspaceraction.h ?? <{{{3}}}>

KDE4Attic

Points to verify before moving the class in KDE4Attic:

  • Make sure the class is not used anywhere in kdelibs anymore


Status Description Contact
TO DO ./widgets/kdatetimeedit.h ?? <{{{3}}}>
TO DO ./widgets/kdatepicker.h ?? <{{{3}}}>
TO DO ./widgets/kmultitabbar.h (used by kate, digikam, kexi --- but could use a cleanup, see e.g. KDEV3ICON...) ?? <{{{3}}}>
TO DO ./widgets/kdatecombobox.h ?? <{{{3}}}>
TO DO ./widgets/ktimezonewidget.h ?? <{{{3}}}>
TO DO ./widgets/kdatetimewidget.h ?? <{{{3}}}>
TO DO ./widgets/kcharselect.h Can soon go into kwidgetsaddons (needs clear button in QLineEdit) ?? <{{{3}}}>
TO DO ./widgets/kdatewidget.h ?? <{{{3}}}>
TO DO ./widgets/ktimecombobox.h ?? <{{{3}}}>
TO DO ./widgets/klanguagebutton.h ?? <{{{3}}}>
TO DO ./widgets/kdatetable.h ?? <{{{3}}}>
TO DO ./util/kmodifierkeyinfo.h missing in Qt: querying state of CapsLock (for kile) ?? <{{{3}}}>
TO DO ./util/kpassivepopupmessagehandler.h only user is kde-runtime/knotify. Move it there? ?? <{{{3}}}>
TO DO ./shortcuts/kgesture.h use #if 0 for the code in xmlgui (KShortcutsEditor) that uses KGesture (it's already hidden from the user anyway) ?? <{{{3}}}>
TO DO ./shortcuts/kgesturemap.h needs polish before it can be resurrected ?? <{{{3}}}>

KGuiAddons

Points to verify before moving a class in KGuiAddons:

  • It depends only on QtGui or QtCore


Status Description Contact
TO DO ./fonts/kfontutils.h ?? <{{{3}}}>
TO DO ./util/kimagecache.h but but but... KsharedDataCache is in kcoreaddons :-/ (tough problem) ?? <{{{3}}}>

KWidgetsAddons

Points to verify before moving a class in KWidgetsAddons:

  • It depends only on QtWidgets, QtGui or QtCore
  • It can depend on other classes in KWidgetsAddons, but that should be kept minimal


Status Description Contact
TO DO ./fonts/kfontrequester.h ?? <{{{3}}}>
TO DO ./dialogs/kassistantdialog.h ?? <{{{3}}}>
TO DO ./dialogs/kpixmapregionselectordialog.h ?? <{{{3}}}>
TO DO ./dialogs/klinkdialog.h ?? <{{{3}}}>
TO DO ./dialogs/knewpassworddialog.h ?? <{{{3}}}>
TO DO ./dialogs/kpassworddialog.h ?? <{{{3}}}>
TO DO ./widgets/kpixmapregionselectorwidget.h ?? <{{{3}}}>
TO DO ./widgets/ktitlewidget.h ?? <{{{3}}}>
TO DO ./widgets/kratingwidget.h ?? <{{{3}}}>
TO DO ./widgets/kratingpainter.h ?? <{{{3}}}>
TO DO ./widgets/kmessagewidget.h (Needs to get rid of K* using fixed default colors, Qstyle :styleHint and Qstyle :standardPixmap) ?? <{{{3}}}>
TO DO ./widgets/keditlistwidget.h ?? <{{{3}}}>
TO DO ./widgets/kactionselector.h ?? <{{{3}}}>
TO DO ./util/kpassivepopup.h ?? <{{{3}}}>
TO DO ./util/kcursor.h ?? <{{{3}}}>
TO DO ./paged/kpagewidget.h ?? <{{{3}}}>
TO DO ./paged/kpagedialog.h ?? <{{{3}}}>
TO DO ./paged/kpageview.h ?? <{{{3}}}>
TO DO ./paged/kpagemodel.h ?? <{{{3}}}>
TO DO ./paged/kpagewidgetmodel.h ?? <{{{3}}}>
TO DO ./shortcuts/kacceleratormanager.h the list of translated texts from standard actions will have to be set by the first KStandardAction being constructed ?? <{{{3}}}>
TO DO ./colors/kcolorbutton.h minor duplication of KcolorMimeData though ?? <{{{3}}}>
TO DO ./colors/kcolorcombo.h ?? <{{{3}}}>
TO DO ./actions/kactionmenu.h ?? <{{{3}}}>
TO DO ./actions/ktoolbarlabelaction.h ?? <{{{3}}}>
TO DO ./actions/ktoolbarpopupaction.h ?? <{{{3}}}>

KWindowSystem

Points to verify before moving a class in KWidgetsAddons:

  • It depends only on QtWidgets, QtGui or QtCore
  • It can depend on other classes in KWidgetsAddons, but that should be kept minimal


Status Description Contact
TO DO ./util/kkeyserver_x11.h ?? <{{{3}}}>
TO DO ./util/kxerrorhandler.h ?? <{{{3}}}>
TO DO ./util/kkeyserver_win.h ?? <{{{3}}}>
TO DO ./util/kkeyserver_mac.h ?? <{{{3}}}>
TO DO ./util/kkeyserver.h ?? <{{{3}}}>

KWidgets

Points to verify before moving a class in ItemViews:

  • It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)
  • It doesn't use anything aimed at ItemViews
  • It doesn't use anything from kdecore
  • Using things from tier1 is fine
  • Using things from tier2 is forbidden


Status Description Contact
TO DO ./dialogs/kaboutapplicationdialog.h (probably difficult) ?? <{{{3}}}>
TO DO ./dialogs/kbugreport.h ?? <{{{3}}}>
TO DO ./dialogs/ktip.h ?? <{{{3}}}>
TO DO ./widgets/khelpmenu.h ?? <{{{3}}}>

ItemViews

Points to verify before moving a class in ItemViews:

  • It doesn't use anything aimed at KCompletion (e.g. KLineEdit or KComboBox)
  • It doesn't use ki18n
  • It doesn't use anything from kdecore
  • It doesn't use anything from kwidgets
  • Using things from tier1 is fine


Status Description Contact
TO DO ./itemviews/kcategorizedview.h ?? <{{{3}}}>
TO DO ./itemviews/klistwidgetsearchline.h (port away from KlineEdit and i18n) ?? <{{{3}}}>
TO DO ./itemviews/ktreewidgetsearchline.h (port away from KlineEdit and i18n) ?? <{{{3}}}>
TO DO ./itemviews/kcategorizedsortfilterproxymodel.h (need porting away from KstringHandler) ?? <{{{3}}}>
TO DO ./itemviews/kwidgetitemdelegate.h ?? <{{{3}}}>
TO DO ./itemviews/kfilterproxysearchline.h (port away from KlineEdit and i18n) ?? <{{{3}}}>
TO DO ./itemviews/kcategorydrawer.h ?? <{{{3}}}>

KCompletion

Points to verify before moving a class in KCompletion:

  • It doesn't use anything from kwidgets
  • It doesn't use anything from kdecore
  • It doesn't use anything from kdeui
  • Using things from tier1 is fine


Status Description Contact
TO DO ./widgets/khistorycombobox.h ?? <{{{3}}}>
TO DO ./widgets/kcombobox.h ?? <{{{3}}}>
TO DO ./widgets/klineedit.h ?? <{{{3}}}>
TO DO ./widgets/kcompletionbox.h ?? <{{{3}}}>
TO DO ./util/kcompletion.h move ksortablelist.h with it ?? <{{{3}}}>

KConfigWidgets

Points to verify before moving a class in KConfigWidgets:

  • It uses only classes from kconfigcore, kconfigui or kwidgetsaddons


Status Description Contact
TO DO ./dialogs/kconfigdialogmanager.h ?? <{{{3}}}>
TO DO ./dialogs/kconfigdialog.h ?? <{{{3}}}>
TO DO ./widgets/kcmodule.h ?? <{{{3}}}>
TO DO ./itemviews/kviewstatesaver.h ?? <{{{3}}}>
TO DO ./itemviews/kviewstatemaintainer.h ?? <{{{3}}}>

KCrash

Status Description Contact
TO DO ./util/kcrash.h ?? <{{{3}}}>

KIconThemes

Points to verify before moving a class in KIconThemes:

  • It uses only classes from tier1 or tier2
  • It uses nothing from kdeui or kdecore


Status Description Contact
TO DO ./util/kpixmapsequencewidget.h ?? <{{{3}}}>
TO DO ./util/kpixmapsequenceoverlaypainter.h ?? <{{{3}}}>
TO DO ./util/kpixmapsequence.h ?? <{{{3}}}>
TO DO ./icons/kiconbutton.h ?? <{{{3}}}>
TO DO ./icons/kicondialog.h ?? <{{{3}}}>

KJobWidgets

Points to verify before moving a class in KJobWidgets:

  • It uses only classes from Qt, kcoreaddons or kwidgetsaddons


Status Description Contact
TO DO ./jobs/kwidgetjobtracker.h ?? <{{{3}}}>
TO DO ./jobs/kabstractwidgetjobtracker.h ?? <{{{3}}}>
TO DO ./jobs/kdialogjobuidelegate.h ?? <{{{3}}}>
TO DO ./jobs/kstatusbarjobtracker.h ?? <{{{3}}}>

KNotifications

Points to verify before moving a class in KNotifications:

  • It uses only classes from KWindowSystem, QtWidgets, QtDBus


Status Description Contact
TO DO ./notifications/kstatusnotifieritem.h ?? <{{{3}}}>
TO DO ./notifications/knotificationrestrictions.h ?? <{{{3}}}>

KWallet

Points to verify before moving a class in KWallet:

  • It uses only classes from kconfigcore, kconfigui or kwindowsystem


Status Description Contact
TO DO ./util/kwallet.h ?? <{{{3}}}>

XmlGui

Points to verify before moving a class in XmlGui:

  • It uses only classes from tier1 or tier2
  • It uses nothing from kdeui or kdecore


Status Description Contact
TO DO ./dialogs/kshortcutseditor.h ?? <{{{3}}}>
TO DO ./dialogs/kshortcutsdialog.h ?? <{{{3}}}>
TO DO ./dialogs/kedittoolbar.h ?? <{{{3}}}>
TO DO ./widgets/kshortcutwidget.h ?? <{{{3}}}>
TO DO ./widgets/kkeysequencewidget.h ?? <{{{3}}}>
TO DO ./util/kundoactions.h ?? <{{{3}}}>
TO DO ./kdepackages.h (goes with kbugreport) ?? <{{{3}}}>
TO DO ./xmlgui/kxmlguiclient.h ?? <{{{3}}}>
TO DO ./xmlgui/kxmlguiwindow.h ?? <{{{3}}}>
TO DO ./xmlgui/kxmlguifactory.h ?? <{{{3}}}>
TO DO ./xmlgui/kmainwindow.h ?? <{{{3}}}>
TO DO ./xmlgui/kxmlguibuilder.h ?? <{{{3}}}>
TO DO ./xmlgui/ktoolbar.h ?? <{{{3}}}>
TO DO ./shortcuts/kcheckaccelerators.h ?? <{{{3}}}>
TO DO ./actions/kactioncollection.h ?? <{{{3}}}>
TO DO ./actions/ktoggletoolbaraction.h ?? <{{{3}}}>
TO DO ./actions/kactioncategory.h ?? <{{{3}}}>

KTextWidgets

Points to verify before moving a class in KTextWidgets:

  • It uses only classes from tier1 or tier2
  • It uses nothing from kdeui or kdecore


Status Description Contact
TO DO ./findreplace/kfinddialog.h ?? <{{{3}}}>
TO DO ./findreplace/kreplacedialog.h ?? <{{{3}}}>
TO DO ./findreplace/kfind.h ?? <{{{3}}}>
TO DO ./findreplace/kreplace.h ?? <{{{3}}}>
TO DO ./widgets/krichtextwidget.h ?? <{{{3}}}>
TO DO ./widgets/nestedlisthelper.h (goes with krichtextedit) ?? <{{{3}}}>
TO DO ./widgets/ktextedit.h ?? <{{{3}}}>
TO DO ./widgets/krichtextedit.h ?? <{{{3}}}>