TreeGadget XML Include 0.1.2

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
tmjuk
Beiträge: 380
Registriert: 30.06.2006 00:10
Wohnort: Backaryd, Schweden

TreeGadget XML Include 0.1.2

Beitrag 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
Zuletzt geändert von tmjuk am 21.05.2010 15:02, insgesamt 4-mal geändert.
PB 4.51 32 Windows Vista, 32 XP, PB 4.51 32 Ubuntu 10.10
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: TreeGadget XML Include

Beitrag 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
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
tmjuk
Beiträge: 380
Registriert: 30.06.2006 00:10
Wohnort: Backaryd, Schweden

Re: TreeGadget XML Include

Beitrag 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
PB 4.51 32 Windows Vista, 32 XP, PB 4.51 32 Ubuntu 10.10
tmjuk
Beiträge: 380
Registriert: 30.06.2006 00:10
Wohnort: Backaryd, Schweden

Re: TreeGadget XML Include 0.1.2

Beitrag 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
PB 4.51 32 Windows Vista, 32 XP, PB 4.51 32 Ubuntu 10.10
Antworten