Einführung

Antworten
Siegfried Schneider
Site Admin
Beiträge: 224
Registriert: Fr Dez 17, 2021 20:52

Einführung

Beitrag von Siegfried Schneider »

Der Interpreter ist das Modul welches die Eingaben auf der Kommandoleiste des Zeichenfensters auswertet.
Er kann durch eigenen Programmcode erweitert werden.
Programmiersprache ist VB.NET, Framework 4.5.1

Standardmäßig wird der Interpreter "WSInterpreter" verwendet.
Wenn ein erweitertes Modul verwendet werden soll, muss dieses von WSInterpreter abgeleitet sein.
Die Codedatei (*.vb) muss im Verzeichnis Binaries/Scripting hinzugefügt werden.

Beispiel für eine Interpreter Erweiterung:

Code: Alles auswählen

Imports System
Imports System.Windows
Imports System.Collections.Generic
Imports System.Windows.Controls
Imports System.Linq
Imports Segas.CadLib
Imports LkExplorer

Public Class NeuerInterpreter
    Inherits WSInterpreter

    Public Sub New(Output As TextBox)
        MyBase.New(Output)
    End Sub

    'Kommandos haben die Form "Function x(String) As Integer"
    Public Function NeuesCount(Param As String) As Integer
	'Erzeugt das neue Kommando NeuesCount das das bestehende Kommando Count aufruft
        Return Count(Param)
    End Function
    
    'FilterKommandos (mit anderen Kommandos stapelbar) haben die Form "Function x(beliebig) As IEnumerable(Of WSDataObject.ISelectable)"
    Public Function NeuesWireText(Source As IEnumerable(Of WSDataObject.ISelectable)) As IEnumerable(Of WSDataObject.ISelectable)
	'Erzeugt das neue FilterKommando NeuesWireText das das bestehende Kommando WireText aufruft
        Return WireText(Source)
    End Function
End Class
Nach einem Neustart des Programms wird mit dem Button links von der Kommandoleiste der neue Interpreter ausgewählt.

Jetzt können auf der Kommandoleiste die neuen Befehle "NeuesCount" und "NeuesWireText" verwendet werden.
Siegfried Schneider
XchangeCAD Entwicklung
support@segas.net
Antworten