Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Live-Template (https://www.delphipraxis.net/103673-live-template.html)

stahli 19. Nov 2007 23:09


Live-Template
 
(BDS 2006 Prof.)

Hallo alle,

ich habe mir heute erstmalig die Live-Templates etwas genauer angesehen. Ist ja nicht schlecht :-)

Auch erstmalig hatte ich heute den Effekt wie auch beim Stammtisch geschehen, dass die Tastatur nicht mehr korrekt funktionierte. Könnte also dort ein Bug sein...!?

Aber nun meine eigentliche Frage: Ist ein Template möglich, das in einer Klasse ein neues Property incl. privater FVariable und Getter- und Setter-Methode erzeugt?

Unter dem Link hier im Forum zu CodeGear ist lediglich ein Beispiel, das ein Property mit einer einfachen Variable erzeugt.

(Ich könnte mir vorstellen, dass das möglich ist, da es bei var... und try... ja ähnlich funktioniert.)


Danke
Stahli

PS: Wenn die Zuordnung in den privat- und protected-Abschnitt nicht automatisch möglich ist, könnte man ja einfach alles im aktuellen Abschnitt erzeugen und die Variable und Methoden dann in die gewünschten Abschnitte von Hand verschieben ... das Template würde ich sicher dann sogar selbst hinkriegen :-)

stahli 22. Nov 2007 11:25

Re: Live-Template
 
So, ich habe mal einen Versuch angefangen...

Zitat:

<?xml version="1.0" encoding="utf-8" ?>
<codetemplate xmlns="http://schemas.borland.com/Delphi/2005/codetemplates"
version="1.0.0">
<template name="propertygs" invoke="manual">
<point name="propertyname">
<text>PropertyName</text>
<hint>Property name</hint>
</point>
<point name="propertytype">
<text>PropertyType</text>
<hint>Property type</hint>
</point>
<description>Property declaration with getter and setter</description>
<author>Andre Stahl</author>
<code language="Delphi" context="memberdecl" delimiter="|">
<![CDATA[ property |propertyname|: |propertytype| read Get|propertyname| write Set|propertyname|;

// ...privat
F|propertyname|: |propertytype|;

// ...protection
function Get|propertyname|: |propertytype|;
procedure Set|propertyname|(Value: |propertytype|);

// ...implementation

function XXX.Get|propertyname|: |propertytype|;
begin
Result:=F|propertyname|;
end;

procedure XXX.Set|propertyname|(Value: |propertytype|);
begin
if |propertyname| <> Value then
begin
F|propertyname| := Value;

end;
end;

|end|]]>
</code>
</template>
</codetemplate>

Ich konnte es allerdings nicht testen, da das Template von der IDE nicht erkannt wurde...!?
Möglicherweise lag es am Autor-Namen "André...". Hier im Dienst ließ sich die Datei deswegen jedenfalls nicht mit dem IE öffnen.

Mir ist unklar, ob man nun die einzelnen Anweisungen gleich in die richtigen Bereiche schieben kann. Ansonsten wäre es aber vielleicht auch so schon hilfreich. Man muss dann die Texte eben von Hand verschieben und spart sich das ständige Neueingeben.
(Propertys definieren kommt in nächster Zeit häufiger auf mich zu... ;-) )

stahli


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz