AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte DTemplate - ein Templatesystem für Delphi
Thema durchsuchen
Ansicht
Themen-Optionen

DTemplate - ein Templatesystem für Delphi

Ein Thema von JamesTKirk · begonnen am 24. Dez 2006 · letzter Beitrag vom 17. Mär 2007
Antwort Antwort
Benutzerbild von JamesTKirk
JamesTKirk
Registriert seit: 9. Sep 2004
Hallo Leutz!

Endlich habe ich mich mal dazu durchgerungen euch eine Klasse von mir zu überreichen - und das auch noch an Weihnachten

Ok... aber um was geht es?

DTemplate ist - wie der Titel schon sagt - ein Templatesystem für Delphi. Ähnlich wie solche, wie sie für PHP existieren. Der Grund ein solches System zu entwickeln war einfach der, dass ich eine einfache Möglichkeit suchte HTML-Dateien dynamisch nach einem bestimmten Muster zu erstellen, um dadurch Datenmengen an einen TWebBrowser zum Drucken weiterzuleiten. Zudem habe ich keine freie Komponente/Klasse für Delphi gefunden...

Das angehängte Zip-Archiv enthält

- die DTemplate Unit in der Version 1.0
- eine ReadMe (bzw. Dokumentation) im HTML-Format
- eine (primitive) Demo Anwendung
- und den Source dazu (Achtung: mit Delphi 2006 erstellt!)

In der Demo werden drei (eigentlich) aufeinander aufbauende Beispiele zur Verwendung von DTemplate gezeigt. Das Ergebnis der Templateerstellung wird einerseits in einen TWebBrowser (über eine temporäre Datei im Verzeichnis der Exe (Schreibrechte!!)) und andererseits in eine Memo ausgegeben. Die Templates selbst sind hardcoded in 4 ReadOnly Memos untergebracht, die über ein PageControl erreichbar sind.

Die DTemplate Klasse verwendet die TRegExpr Klasse, welche hier zu finden ist. (da die Seite allerdings nicht erreichbar scheint, hänge ich das Archiv mit der Klasse mit dran... )

Ich freue mich auf euer Feedback

Edit: Neues Archiv mit ausführlicher ReadMe/Doku online gestellt.
Angehängte Dateien
Dateityp: rar regexpr_de_822.rar (84,5 KB, 25x aufgerufen)
Dateityp: zip dtemplate_106.zip (299,9 KB, 51x aufgerufen)
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
 
Pfoto

 
Turbo Delphi für Win32
 
#2
  Alt 25. Dez 2006, 08:42
Moin JamesTKirk!

ich wollte in nächster Zukunft nach einer solchen Klasse
suchen, bzw. sie selbst entwickeln.

Gefällt mir gut, die Funktionalität, auch dass man z.B. so
flexibel Tabellen erstellen kann.

Die genaue Handhabe muss ich mir allerdings nochmal genauer
zu Gemüte führen - so ganz simple ist es ja nicht...


Vielen Dank, dass Du's zur Verfügung gestellt hast.
Falls ich den Code in meinem Projekt verwende oder weiterentwickle,
gebe ich dir natürlich Nachricht!


Gruß
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat
alzaimar

 
Delphi 2007 Enterprise
 
#3
  Alt 25. Dez 2006, 10:06
Von Templates hab ich nicht so richtig Ahnung (Ich find sie toll, würde sie benutzen, weiss aber nicht genau, was das ist ), aaaber:

Ist es nicht so, das ein 'Templatesystem' ein einfaches StrReplace ist? Im Endeffekt ersetzt man bestimmte Platzhalter in einem Text durch konkrete Werte, oder? Das Tolle daran ist doch der Input, also das Template selbst. Stimmt das, oder hab ich was entscheidendes übersehen?
  Mit Zitat antworten Zitat
Benutzerbild von JamesTKirk
JamesTKirk

 
FreePascal / Lazarus
 
#4
  Alt 25. Dez 2006, 10:16
Sers!

@Pfoto:
Hauptziel für mich war es ja, das Ganze so flexibel wie ein PHP Template System zu gestalten... und das denke ich, ist mir gelungen (Eigenlob stinkt )

Jetzt wo du's sagst: Ich müsste mal noch eine Bedienungsanleitung bzw. Dokumentation schreiben... Upsi (wusste doch, dass ich was vergessen hab )

@alzaimar:
Einerseits hast du Recht: im Grunde ist ein Templatesystem etwas, das auf StrReplace aufbaut. Das gilt uneingeschränkt allerdings nur für "primitive" Templates.
Schau dir z.B. mal die Posts in der DP an. In den Templates ist hinterlegt wie so ein Post ganz allgemein ausschaut: links Infos über den Poster, rechts dann der Text. Alles mit Platzhaltern versehen. Das ergibt somit einen Block.
Durch das Templatesystem und eigenen Code kannst du jetzt eine beliebige Anzahl solcher Blöcke - mit individuellen Werten (Poster A und Text A bzw Poster B und Text B) versehen - ausgeben, um so auf gemütliche Art und Weise einen ganzen Thread zu erhalten.
Zudem sind Templates dazu da, das Design vom eigentlichen Code so gut es geht zu trennen...

Hoffe es ist etwas klarer geworden
Sven
  Mit Zitat antworten Zitat
Benutzerbild von JamesTKirk
JamesTKirk

 
FreePascal / Lazarus
 
#5
  Alt 17. Mär 2007, 13:37
So... ich habe nun endlich die versprochene Dokumentation in das Archiv mit reingepackt. Sie heißt zwar "ReadMe", aber dem Inhalt nach hätte ich sie eher "Doku" nennen sollen

Ich hoffe, dass dadurch die Funktionsweise, als auch Sinn und Zweck des Ganzen ersichtlicher werden.

Feedback, Bug-Berichte und Co sind natürlich immer noch willkommen

Edit: Neues Archiv siehe 1. Beitrag (es lebe meine Verplantheit )
Sven
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz