Hallo zusammen!
Ich bin gerade auf der Suche nach einer C/C++-Möglichkeit die Icons aus bspw. desktop-files zu ermitteln. Es gibt bspw. die Möglichkeit, das über QIcon zu machen, allerdings bringt mir das für meinen konkreten Fall gerade nichts, da ich den absoluten Dateipfad brauche und QIcon diesen intern verwirft. Hintergrund ist, dass QImage/QIcon in QML Probleme mit svg hat, was es für mich gerade unbrauchbar macht.
In desktop-Dateien können ja absolute Pfade — oder relative Namen wie „system-file-manager“ stehen. Letztere Versuche ich aufzulösen und dann noch entsprechend der vorhandenen Größen zu sortieren, bzw. anhand des aktuellen Fensters die passende Größe zu bestimmen. Allerdings ist es relativ träge die Bilddateien einzeln zu öffnen, die Bildgröße zu ermitteln und auszuwerten. Der Dateiname des aktuellen Themes ist auch nicht immer hilfreich, da nicht jedes Icon-Theme die gleichen Unterordner hat und sich die Abschnitte in …[Theme]/index.theme auch unterscheiden. KDE legt sich dafür einen icon-cache an, in der GTK-Welt gibt es sicherlich etwas ähnliches.
Gibt es auch sowas unabhängig vom desktop environment oder muss ich mir da eine eigene DB erstellen?