Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Delphi IDE verbirgt mehr Zeilen als durch $REGION ... $ENDREGION eingeschlossen sind (https://www.delphipraxis.net/208282-delphi-ide-verbirgt-mehr-zeilen-als-durch-%24region-%24endregion-eingeschlossen-sind.html)

mjustin 8. Jul 2021 16:44

Delphi IDE verbirgt mehr Zeilen als durch $REGION ... $ENDREGION eingeschlossen sind
 
Liste der Anhänge anzeigen (Anzahl: 2)
Beispiel:

wenn ich z.B. das REGION vor den Beginn einer Typdefinition setze und ENDREGION noch vor das Ende der Typdefinition, erweitert die IDE den Bereich bis nach dem Ende der Typdefinition.

Delphi-Quellcode:

{$REGION}
   /// some code I want to hide
   TTest = class
      /// some code
      /// ...
      /// ...
{$ENDREGION}
      /// some code I want to see
      /// ...
   end;
Region aufgeklappt:
Anhang 54159

Zugeklappt: da fehlen Zeilen, die nicht in der Region liegen:

Anhang 54160

Konkret störend ist das, wenn man mit Quelltextgeneratoren Code erzeugt und dann den Teil ausblenden will, der nicht editiert werden darf.
Wenn man im obigen Beispiel Methoden und Felder nach Endregion hinzufügen darf, innerhalb der Region aber nicht.
Ist das ein bekanntes "Feature" der IDE?

Uwe Raabe 8. Jul 2021 17:01

AW: Delphi IDE verbirgt mehr Zeilen als durch $REGION ... $ENDREGION eingeschlossen s
 
Da die Klassendeklaration selbst auch eine implizite Region ist, kann ich mir vorstellen, dass die IDE da ganz pragmatisch diese Überschneidung auflöst.

Code-Folding verwenden
Zitat:

Die folgenden Codeblöcke können ausgeblendet/eingeblendet werden:

Typdefinitionen
Funktionsdefinitionen
Namespaces (C++) und Units (Delphi)
Abschnittsdirektiven (region) des Präprozessors (siehe die Informationen über Abschnitte weiter unten)
Kommentare in der XML-Dokumentation für Delphi-Code (Kommentare mit drei Schrägstrichen: ///)

himitsu 12. Jul 2021 12:52

AW: Delphi IDE verbirgt mehr Zeilen als durch $REGION ... $ENDREGION eingeschlossen s
 
Hier gibt es ja klar eine Überschneidung von zwei Folding-Sektionen.

Delphi-Quellcode:
   /// some code I want to hide
   TTest = class
{$REGION}
      /// some code
      /// ...
      /// ...
{$ENDREGION}
      /// some code I want to see
      /// ...
   end;
Selbst so könnte es noch eine Überschneidung geben, da auch inzwischen /// gefaltet werden kann. (ohne eine Region drumrum, so wie früher nötig)




Aber ein paar Mal hatte ich auch schon ein paar Mal solch ein Problem, wo ich keinen Grund finden konnte. :(


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:47 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