Einzelnen Beitrag anzeigen

Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#100

AW: ScriptEngine II (v. 0.5.4.1)

  Alt 10. Okt 2010, 18:24
Neue Version Version 0.5.4.1

Mir ist in der letzten Version ein etwas größerer Fehler unterlaufen, daher schiebe ich schnell noch dieses Update hinterher:
  • Neuerungen
    • Der "Self" - Parameter ist in Klassenmethoden nun nicht mehr notwendig. Nun kann man auf alle Felder, Methoden und Properties einer Klasse ohne vorheriges "Self." zugreifen. Die Code-Completion-Klasse ist für dieses Feature ebenfalls bereits erweitert.
    • Bei Properties von externen Klassen kann der Compiler jetzt optional automatisch einen entsprechenden Getter und Setter erstellen. Das erspart einiges an Tipp-Arbeit beim importieren der externen Klassen. Hier mal ein Beispiel.
      Vorher:
      Delphi-Quellcode:
      type
        TTest = class(TExternalObject)
        private
          function GetCaption: string; external;
          procedure SetCaption(value: string); external;
        public
          property Caption : string read GetCaption write SetCaption;
        end;
      Nacher:
      Delphi-Quellcode:
      type
        TTest = class(TExternalObject)
        public
          property Caption : string read and write;
        end;
      Hier mal die Deklaration für die einzelnen Property-Typen:
      • Read-Only: property [Name]: [Typ] read;
      • Write-Only: property [Name]: [Typ] write;
      • Read-Only: property [Name]: [Typ] read and write;

      Das ganze geht natürlich auch für parametrisierte Properties:
      Delphi-Quellcode:
      type
        TTest = class(TExternalObject)
        public
          property Items[index: integer]: string read and write;
        end;
  • Änderungen
    • Test-Code aus der System-Unit entfernt: alle DateTime-Aufrufe mit einer LanguageId sind entfernt
  • Bug-Fixes
    • In Klassenmethoden können nun auch Variablen deklariert werden, deren Name in der Klasse für ein Feld, eine Methode oder eine Property benutzt wurden.
    • Der Zugriff auf nicht-statische Klassen/Record Variablen von einem statischen Element aus wurde nicht abgefangen
    • Kritischer Fehler behoben: bei der Deklaration von einer String-Variable innerhalb eines Records kam es zu einer Zugriffsverletzung innerhalb des Compilers

Download-Link ist im ersten Post.

Grüße
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  Mit Zitat antworten Zitat