Seite 1 von 1

TreeGadget XML Include 0.1.2

Verfasst: 13.05.2010 22:44
von tmjuk
Hallo

Ich muss mich des Öfteren mit verschachtelten Datenstrukturen herumschlagen. Diese können wunderbar in TreeGadgets angezeigt werden.
Um mir die Arbeit zu Erleichtern habe ich mir eine Include zum Treegadget geschrieben.
Vielleicht kann es auch jemand von euch gebrauchen.

Hier mal ein paar Daten:
- basiert auf XML
- Daten werden aus XML-Dateien eingelesen und auch wieder gespeichert
- Knoten können samt ihres Inhaltes kopiert, verschoben und gelöscht werden
- Kopieren, verschieben und Löschen auch zwischen mehreren Treegadgets möglich
- Erstellen von Knoten
- Darstellung von bis zu 10 unterschiedlichen Bildern im Treegadget
- Alphabetisches Sortieren vom ganzen Baum oder nur eines Zweiges
- nur PB-native Befehle werden verwendet (Windows, Linux, ...?)

Da der Quellcode ein wenig zu gross wäre gibt es hier den Download.
Im Archiv sind die Include TreeXML.pbi, die Beispielprogramme test_tree1.pb und test_tree2.pb, 3 XML Dateien für die Beispiele, die Dokumentation und ein Ordner mit Bildern.

Wenn es euch interessiert dann probiert es mal aus.
Wäre schön, wenn ein paar Rückmeldungen kommen. Eventuell gibt es ja auch noch Bugs oder natürlich Verbesserungen.

Bis bald
Torsten

Edit: 1. Verbesserung durchgeführt Variablentypen geändert
Edit: 2. Bug beim Verschieben entfernt
Edit: 3. Geänderte Version 0.1.2

Re: TreeGadget XML Include

Verfasst: 13.05.2010 23:39
von ts-soft
:allright:

Aber trotzdem muß ich Kritik anmelden :mrgreen:
Pointer sind niemals von einem einfachen Typ, sondern haben keine Extension, bzw.
nur wenn es sich um eine struktur handelt.

*pointer.l ist das allerverkehrteste in dieser Richtung. Der PB-Compiler ignoriert dies zwar aber ...

Event.l ist auch ein Integer, aber das Quit.i wäre dann nicht so wichtig.
xml.l ist Total verkehrt, spätestens wenn man #PB_Any nutzt werden die Objectpointer
dort nicht hineinpassen! Also auch .i

Auch wenn Du kein x64 zur Verfügung hast, kann man diese Dinge einhalten:
Pointer sind structuriert oder haben keine Extension. Wenn unbedingt Extension, dann bitte
.i!
Handle zu Objekten, auch PB-Objekten sind immer Integer!

Wenn .l nicht unbedingt erforderlich, dann nutzt es bitte auch nicht, es führt unter
x64 zu fehlern bzw. bremst das Programm aus.

Gruß
Thomas

Re: TreeGadget XML Include

Verfasst: 13.05.2010 23:44
von tmjuk
Danke für die klärenden Worte :mrgreen:
Werde ich ändern. Soll ja schliesslich überall passen.

Torsten

Edit: Kritik bearbeitet, Kode und Dokumentation geändert

Re: TreeGadget XML Include 0.1.2

Verfasst: 21.05.2010 15:06
von tmjuk
Hallo,

habe kleine Änderungen durchgeführt.

Die Prozeduren zum Finden der Anzahl der Childnodes und Rückgabe des Pointers wurden ersetzt durch eine Prozedur, welche die Id's aller Childnodes zurückgibt.
Hinzugekommen ist eine einfache Prozedur zum Suchen/Ersetzen in den Attributen.

Downloadlink ist aktualisiert und steht im 1. Post

Bis bald
Torsten