GExperts- Funktionalitäten

Für Fragen rund um die Ide und zum Debugger
Antworten
am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

GExperts- Funktionalitäten

Beitrag von am2 »

Hi,

als ich noch aktiv programmierte, war es zuletzt Delphi in Kooperation mit GExperts und irgendeinem SourceCode- Formatter.
Da ich jetzt nur noch selten und als Hobby zum Programmieren komme, erfüllt Lazarus den Zweck ganz gut, zudem ist es plattformübergreifend.

Aber ein paar Dinge aus der alten Zeit fehlen mir doch oder zumindest habe ich sie nicht gefunden:
- Wenn ich eine Komponente auf das Formular klebe, dann konnte man in GExperts bestimmen, welche Attribute gleich in einer Maske abgefragt werden. Zumindest den Namen und meist auch irgendwelche Höhen/Breiten was auch immer habe ich da eigentlich standardmäßig ausgefüllt. Jetzt muss ich jedesmal die Felder einzeln rausstochern
- wenn ich ein Kürzel + ShortCut eingegeben habe, dann hat er nach meinen Vorgaben gleich ein paar Zeilen automatisch generiert (Beispielsweise könnte man aus thread dann so etwas machen, wie:

Code: Alles auswählen

MyThread = class(TThread)
   private
    procedure ShowStatus;
  protected
    procedure Execute; override;
  public
    Constructor Create(CreateSuspended : boolean);
end;
 
(natürlich würde ich das noch weiter treiben, um mir Arbeit zu sparen)

Da waren auch noch andere lustige Sachen drin, aber diese hier fehlen mir aktuell am meisten. Gibt es da irgendetwas oder muss ich mir das wieder über Excel oder so etwas generieren lassen (bzw. was die automatische Umbenennungshilfe betrifft, bin ich sonst ja machtlos)

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: GExperts- Funktionalitäten

Beitrag von wp_xyz »

am2 hat geschrieben:Wenn ich eine Komponente auf das Formular klebe, dann konnte man in GExperts bestimmen, welche Attribute gleich in einer Maske abgefragt werden. Zumindest den Namen und meist auch irgendwelche Höhen/Breiten was auch immer habe ich da eigentlich standardmäßig ausgefüllt. Jetzt muss ich jedesmal die Felder einzeln rausstochern
Rechtsklick auf Formular > "Formulareditor", in der Box "Verschiedenes" die Einträge "Komponentennamen beim Neuanlegen abfragen" und "Zum Favoritenreiter des Objektinspectors umschalten" markieren

am2 hat geschrieben:wenn ich ein Kürzel + ShortCut eingegeben habe, dann hat er nach meinen Vorgaben gleich ein paar Zeilen automatisch generiert
Code-Templates --> http://wiki.freepascal.org/IDE_Window:_ ... mplates/de

am2 hat geschrieben:Da waren auch noch andere lustige Sachen drin, aber diese hier fehlen mir aktuell am meisten. Gibt es da irgendetwas oder muss ich mir das wieder über Excel oder so etwas generieren lassen (bzw. was die automatische Umbenennungshilfe betrifft, bin ich sonst ja machtlos)
Editor-Macros: --> http://wiki.freepascal.org/IDE_Window:_Editor_Macros/de

Zum Umbenennen von Variablen benutze ich im Kontext-Menü der Variablen den Punkt "Refactoring" > "Bezeichner umbennen" (wobei man das bei Komponenten auch im Objekt-Inspector machen kann). Im Kontextmenü einer Komponente im Formular-designer kann man auch die Klasse der Komponente ändern ("Elternobjekt ändern").

am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Re: GExperts- Funktionalitäten

Beitrag von am2 »

Auch hier wieder: Sehr hilfreich, ich hangle mich mal durch.

am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Re: GExperts- Funktionalitäten

Beitrag von am2 »

wp_xyz hat geschrieben:
am2 hat geschrieben:Wenn ich eine Komponente auf das Formular klebe, dann konnte man in GExperts bestimmen, welche Attribute gleich in einer Maske abgefragt werden. Zumindest den Namen und meist auch irgendwelche Höhen/Breiten was auch immer habe ich da eigentlich standardmäßig ausgefüllt. Jetzt muss ich jedesmal die Felder einzeln rausstochern
Rechtsklick auf Formular > "Formulareditor", in der Box "Verschiedenes" die Einträge "Komponentennamen beim Neuanlegen abfragen" und "Zum Favoritenreiter des Objektinspectors umschalten" markieren

am2 hat geschrieben:wenn ich ein Kürzel + ShortCut eingegeben habe, dann hat er nach meinen Vorgaben gleich ein paar Zeilen automatisch generiert
Code-Templates --> http://wiki.freepascal.org/IDE_Window:_ ... mplates/de

am2 hat geschrieben:Da waren auch noch andere lustige Sachen drin, aber diese hier fehlen mir aktuell am meisten. Gibt es da irgendetwas oder muss ich mir das wieder über Excel oder so etwas generieren lassen (bzw. was die automatische Umbenennungshilfe betrifft, bin ich sonst ja machtlos)
Editor-Macros: --> http://wiki.freepascal.org/IDE_Window:_Editor_Macros/de

Zum Umbenennen von Variablen benutze ich im Kontext-Menü der Variablen den Punkt "Refactoring" > "Bezeichner umbennen" (wobei man das bei Komponenten auch im Objekt-Inspector machen kann). Im Kontextmenü einer Komponente im Formular-designer kann man auch die Klasse der Komponente ändern ("Elternobjekt ändern").


Leider habe ich keinen Deiner Tips umsetzen können.

Den Formulareditor konnte ich in der Version 1.6.2 nicht finden, bin durch alle Menüs gegangen und habe an allen möglichen und unmöglichen Stellen Rechtsklicks versucht. Hast Du noch einen Tip, wo ich suchen muss?
Die Makros konnte ich auch nicht finden, die Beschreibung in der Lazarus- Hilfe gibt auch nicht viel dazu her.
Was die Templates betrifft, konnte ich zwar die Quelle finden, weiß aber nicht viel damit anzufangen. Gibt es dazu eine umfangreichere Anleitung? Muss ich dort eigene Funktionen implementieren und bei einem Neubau der IDE sind die dann da? Gibt es eine irgendwie geartete Textdatei, in der die Definitionen drin stehen? Ich habe mal nach "casee" gesucht (im gesamten Verzeichnis), aber diese Zeichenkette ist so nicht zu finden, obwohl es ein template gibt, dass daraus gebaut wird.

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: GExperts- Funktionalitäten

Beitrag von wp_xyz »

am2 hat geschrieben:
wp_xyz hat geschrieben:
am2 hat geschrieben:Rechtsklick auf Formular > "Formulareditor", in der Box "Verschiedenes" die Einträge "Komponentennamen beim Neuanlegen abfragen" und "Zum Favoritenreiter des Objektinspectors umschalten" markieren

Den Formulareditor konnte ich in der Version 1.6.2 nicht finden, bin durch alle Menüs gegangen und habe an allen möglichen und unmöglichen Stellen Rechtsklicks versucht. Hast Du noch einen Tip, wo ich suchen muss?

OK - da fehlte ein Schritt: Rechtsklick auf Formular > "Einstellungen" aus dem Kontext-Menü -> in der linken Baumansicht findest du den erwähnten Eintrag "Formular-Editor" --> weiter wie beschrieben

am2 hat geschrieben:
wp_xyz hat geschrieben:
am2 hat geschrieben:Da waren auch noch andere lustige Sachen drin, aber diese hier fehlen mir aktuell am meisten. Gibt es da irgendetwas oder muss ich mir das wieder über Excel oder so etwas generieren lassen (bzw. was die automatische Umbenennungshilfe betrifft, bin ich sonst ja machtlos)
Editor-Macros: --> http://wiki.freepascal.org/IDE_Window:_Editor_Macros/de

Den Macro-Editor findest du unter "Ansicht" > "Editormakros". Es gibt da einen "Record"-Button, um eine Aufnahme-Funktion von Tasteneingaben zu aktivieren. Der Rest ist in dem genannten wiki-Artikel erklärt.

am2 hat geschrieben:
wp_xyz hat geschrieben:
am2 hat geschrieben:wenn ich ein Kürzel + ShortCut eingegeben habe, dann hat er nach meinen Vorgaben gleich ein paar Zeilen automatisch generiert
Code-Templates --> http://wiki.freepascal.org/IDE_Window:_ ... mplates/de

Was die Templates betrifft, konnte ich zwar die Quelle finden, weiß aber nicht viel damit anzufangen. Gibt es dazu eine umfangreichere Anleitung? Muss ich dort eigene Funktionen implementieren und bei einem Neubau der IDE sind die dann da? Gibt es eine irgendwie geartete Textdatei, in der die Definitionen drin stehen? Ich habe mal nach "casee" gesucht (im gesamten Verzeichnis), aber diese Zeichenkette ist so nicht zu finden, obwohl es ein template gibt, dass daraus gebaut wird.

Der Menüpunkt "Werkzeuge" > "Vorlagen" öffnet den Code-Template-Editor. Die Vorlagen sind in der dci-Datei gespeichert, die in der Box "Modul" genannt ist. Die vorhandenen Vorlagen werden in der linken Liste aufgeführt. Suche als Beispiel die Zeile "casee - case statement with else". Der Text vor dem Bindestrich ist das Befehlskürzel - schreibe diesen in den Quelltext und drücke STRG+j, dann wird das "casee" durch den unten vorgegebenen Text ersetzt, wobei sich der Cursor an der Stelle mit dem | befindet.

Um ein Template zu erstellen, klicke im Vorlageneditor auf "Hinzufügen". Du wirst nach dem Kürzel und einem Beschreibungstext gefragt, das sind in der Übersicht die beiden Texte vor und nach dem "-" Zeichen. Gibt z.B. folgendes ein: Token --> l, Kommentar: --> Trennlinie, dann OK. In dem Memo-Feld unten schreibst du (ohne die Anführungszeichen) "\\------------------------------------", dann Return um den Cursor in die nächste Zeile zu positionieren und das Zeichen | eingeben - das definiert, wo der Cursor nach Ausführen der Vorlage sich befinden soll. Vorlagen-Editor mit OK schließen. Wo du im Quelltext künftig eine Trennlinie haben willst, tippst du l und STRG+j.

Vorhandene Templates kannst du in dem Vorlagen-Editor einfach editieren, indem du die gewünschte Vorlage in der Liste auswählst und dann unten im Memo den Vorlagentext änderst.

Wenn du das Prinzip vorstanden hast, brauchst du keine weitere Anleitung, den Rest lernst du durch Ausprobieren.

am2
Lazarusforum e. V.
Beiträge: 116
Registriert: Di 21. Dez 2010, 09:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2)
CPU-Target: 32 Bit

Re: GExperts- Funktionalitäten

Beitrag von am2 »

Vielen vielen Dank, jetzt habe ich alles gefunden und bis jetzt erscheint es einleuchtend. Mach ich mich in den nächsten Tagen drüber her.

Antworten