Icons
When you create your own KDE application you will probably want to have icons in it respecting your user's icon theme.
This is possible with the help of QIcon::fromTheme for QtWidgets applications or Kirigami's Icon for QtQuick applications. Both take the name of the icon in the icon theme as an argument.
Plasma and all the other major Linux deskops follow the Freedesktop icon specification and naming specification. A fallback mechanism is also present so that if the document-open-recent
icon is not present, the document-open
icon will be displayed instead, and if the document-open
icon is also not present the document
icon will be displayed.
Finding the right icons
KDE provides an application to search for icons, Cuttlefish. It is generally available in the plasma-sdk
package available through your package manager on Linux.
Cuttlefish allows you to search for icons by name and by category. You can inspect the different color schemes of an icon as well as view a selected icon in other themes.
Example
In a traditional QtWidgets application:
QIcon undoicon = QIcon::fromTheme("edit-undo");
In a QtQuick application:
import org.kde.kirigami 2.14 as Kirigami
Kirigami.Icon {
source: "edit-undo"
}
Other platforms than Linux
On other platforms, the icon theme is not available.
Android
On Android, you can use the kirigami_package_breeze_icons() CMake function to package the Breeze icons you are using.
if(ANDROID)
kirigami_package_breeze_icons(ICONS
edit-undo
edit-redo
)
endif()