Verzeichnisbaum für KDE-Anwendung erstellen



  • Hi,

    ich suche schon eine Weile aber ich finde keine entsprechende Doku. Ich möchte mit Qt, speziell mit den kdelibs für KDE3 ein Widget erstellen, das mir einen Verzeichnisbaum darstellt.
    Ich will dem Widget einen Pfad übergeben und dieser soll dann als Baum dargestellt werden, also rekursiv durchlaufen und in die KListView die Verzeichnisse einfügen.
    Ich weiß aber gar nicht wie ich das angehen soll, gibt es dafür vielleicht schon fertige Sachen? Da es ein KDE-Programm werden soll wären fertige KDE-Widgets schon sehr fein. Gibt es da was?



  • suchst du den hier KFileTreeView oder den hier KDirOperator. der zweite ist deutlich umfangreicher, aber für mache dinge schon zu gut.
    oder willst du es selber bauen? dann ist ListJob der richtige anlaufpunkt. (bitte den hinweis in der einführung beachten. 😉 )



  • Danke, genau das habe ich gesucht.
    Ich finde leider nicht raus wie ich die Icongröße der Verzeichnisse in der Liste ändern kann, ich habe die in KDE sehr klein eingestellt, damit es in Krusader nicht so komisch aussieht, aber ich dachte man kann die vielleicht auch manuell einstellen, so auf 64x64... naja ich muss wohl nochmal genau suchen, wo ich das machen kann.

    s = EyeSeeKSettings::instance();
    folderTree->addColumn("Folders");
    folderTree->setFullWidth(true);
    folderTree->addBranch(KURL(s->albumPath()),"albums");
    KFileTreeBranch* root = folderTree->branch("albums");
    root->setDirOnlyMode(true);
    root->setOpen(true);
    

    So habe ich es implementiert, scheint ja ganz gut zu funktionieren.
    Jetzt habe ich neben dem ListView ein KIconView, vielleicht hat ja nochmal jemand Tipps wie ich dort Thumbnails von Bildern im selektierten Verzeichnis erstellen kann?
    Für mich ist GUI-Programmierung noch sehr komisch, das ist mein erstes Programm das ich mit einer GUI ausstatte und die Mischung aus Qt und KDE macht einen manchmal schon sehr durcheinander... 😃



  • da ich so langsam das gefühl bekomme, dass du dir eine vollständigen dateibrowser schreiben willst, empfehle ich dir: nimm KDirOperator da ist alles drin, was du brauchst.
    aber zu deiner frage, mit dem preview. nimm einfach KFileIconView, ruf dann showPreviews() auf und du bist fertig.



  • Nein, keinen Dateibrowser, eigentlich nur eine Art Bildbetrachter. Ich den Settings wird ein root-Verzeichnis angegeben und dieses wird dann immer links im ListView angezeigt, ähnlich wie bei digikam. Rechts sollen dann einfach die Thumbnails kommen, wenn ich links ein Verzeichnis markiere. Eventuell bei Klick auf das Thumbnail eine große Ansicht des Bildes.
    Danke für den Tip, werde ich mir gleich mal anschauen.



  • Hmm das scheint nicht das richtige zu sein, wahrscheinlich brauche ich die normale KIconView... nur ich habe keinen Plan wie ich nur die Bilder im Verzeichnis finden kann, das gerade in der ListView selektiert ist.
    Mein Ziel ist es solche Thumbnails zu machen:
    http://img254.imageshack.us/img254/5799/s5kp5.png
    Der rote Punkt leuchtet entweder oder nicht, kommt darauf an was das Programm analysiert hat. Ebenso sollen dann die gelben Kreise gemalt werden (obwohl ich das lieber in der Vollansicht machen würde).


Anmelden zum Antworten