Navigation: click.EXE 5.0 Premium > Eigene PlugIns > cXtensionen >

Aufbau

Diese Seite drucken
Vorherige Seite Nächste Seite
Zurück zur Kapitelübersicht

Aufbau des Objekts für eine cXtension:

Das cXtension-Skript besteht üblicherweise nur aus einem Objekt, ggf. mit einem Vorspann zum Verhindern eines eigenständigen Starts. Der Name des Objekts ist gleichzeitig der Name des neuen Befehls in der click.EXE-Befehlsliste (sofern ein neuer Befehl gewünscht ist) bzw. des Platzhalterbereichs.

Damit das Objekt als PlugIn arbeiten kann, muss es einen festgelegten Grundaufbau haben, also bestimmte Eigenschaften aufweisen, deren Namen mit einem Ausrufungszeichen beginnen.

Die Info-Eigenschaft der Marke ::Objekt(Name)_Start wird als Beschreibung der cXtension verwendet.

 

Über folgende Eigenschaften (jeweils nur Lesen) kann bzw. muss ein cXtension-Objekt verfügen (die Beispielcodes zeigen den Code einer cXtension namens Muster):

 

!Registriert(optional) cXtension ist registriert (lizensiert und daher im Editor uneingeschränkt nutzbar) oder nicht
!Variablen(optional) Liste der bereitgestellten Variablen (Eigenschaften ohne auszuführenden Code)
!Ereignisse(optional) Liste der verfügbaren Ereignisse (müssen im cXtension-Skript per Aufruf als "Ereignis" aufgerufen werden)
!DarstellungDefinition der Darstellung der cXtension-Befehle im Skript (Skriptzeile im Listing)
!Designerbild(optional) Symbol, das die cXtension im Dialog-Designer repräsentieren soll.
Diese Eigenschaft ist erforderlich, wenn dies eine Anzeigeelemente-cXtension ist
!MenüeintragHierdurch kann ein eigener Menüeintrag im cX-Editor angezeigt werden.
!Ausführender eigentliche Code, der bei der Ausführung des cXtension-Befehls ausgeführt werden soll
!Start(optional) Das Skript wurde gestartet - Platz für Initialisierungen
!Stopp(optional) Das Skript wurde beendet - stoppt die Ausführung in der cXtension
!FesteEigenschaften(optional) Hier können mehrere Eigenschaften als Liste im Zurück-Befehl unter "Rückgabe" angegeben werden (z.B. !Beschreibung=xyz)

 

::Objektname_StartInitialisierung des Objekts, die beim Laden der cXtension aufgerufen wird. Hier können allgemeine Vorbereitungen ausgeführt werden
::Objektname_StoppAufräumfunktion, die beim Beenden der cXtension (Skriptende) aufgerufen wird

 

Optional kann bei selbst angelegten Eigenschaften noch der Typ der Eigenschaft angegeben werden, damit in der Eigenschaftenliste auch z.B. ein Schalter oder eine Dateiauswahl erscheint. Der Typ wird zu Beginn der Beschreibung als X: angegeben, wobei für X stehen kann:

M:=Multiline-Eigenschaft, C:=Schalter, F:=Datei, V:=Variable, O:=Farbe, G:=Bild. J:=Sprungmarke, -:=nicht als Eigenschaft aufführen (nur über Platzhalter zu verwenden).

 

Ist in der Beschreibung zudem noch die Kategorie in # eingeschlossen enthalten, wird die Eigenschaft in der Eigenschaftenliste unter dieser Kategorie angezeigt.

Beispiel: "F:#Darstellung#Anzuzeigende Farbe" erzeugt eine Farbeigenschaft in der Kategorie "Darstellung" mit der Beschreibung "Anzuzeigende Farbe".

 

Die weiteren Eigenschaften des Befehls werden als normale Objekt-Eigenschaften eingerichtet:

 

 

!Registriert  (optional)

Ist diese Eigenschaft implementiert, kann durch Rückgabe von 0 die cXtension als unregistriert bzw. bei 1 als registriert definiert werden. Dies wirkt sich ebenso aus wie bei den anderen PlugIns in click.EXE.

 

::  Muster_!Registriert_Lesen

  ***  Beispiel-cXtension ist registriert

Zurück   (Ergebnis: '1')

 

 

 

!Variablen  (optional)

Liefert die Variablen, die zur Steuerung der cXtension benötigt werden.Diese Variablen werden im folgenden Format angegeben:

Variable=Beschreibung (z.B. Test=liefert eine Zahl). Mehrere Variablen können auch als mehrzeilige Liste angegeben werden.Die so erstellten Variablen tauchen dann in der Variablenauswahl unter der Kategorie "cXtensions-Eigenschaften" auf und können dann wie gewohnt benutzt werden.

 

::  Muster_!Variablen_Lesen

  ***  Variablen der Beispiel-cXtension

Zurück   (Ergebnis: 'Test=liefert eine Zahl')

 

 

!Ereignisse  (optional)

Liefert die Ereignisse der cXtension. Diese werden ebenfalls im Format "Text=Beschreibung" angegeben. In diesem Fall entspricht Text dem Namen des Ereignisses. Diese definierten Ereignisse werden dann auch im Marken-Dialog angeboten.(z.B. ::Muster_Test)

 

::  Muster_!Ereignisse_Lesen

  ***  Ereignisse der Beispiel-cXtension

Zurück   (Ergebnis: 'Muster_Klick=Ereignis bei Klick'')

 

 

 

 

!Darstellung

Hier wird definiert, wie der neue Befehl der cXtension im Skriptlisting mit seinen Eigenschaften aussehen soll.

Hinweise:

Die Platzhalter, die mit "Befehlsparameter." beginnen, sind von click.EXE vorgegeben und erleichtern die Verwaltung der Parameter für den Befehl. Bei  cXtensionen, die ein Element im Fenster darstellen sollen, sind dabei einige Variablen einzubauen, damit dies auch mit dem Dialog-Designer zusammenarbeiten kann.
Beginnt der zurückgelieferte Text mit ==, wo wird der Rest als Befehlsanzeige verwendet, ohne dass das Schlüsselwort davor gesetzt wird.

 

::  Muster_!Darstellung_Lesen

  ***  Darstellung der Beispiel-cXtension

Zurück   (Ergebnis: 'X=[cX.cXtension.Befehlsparameter(X)], Y=[cX.cXtension.Befehlsparameter(Y)], Farbe=[Farbe]')

 

 

!Dialog  (optional)

In diesem Ereignis wird ein Dialog dargestellt, in dem ein hinzugefügter Befehl bearbeitet werden kann. Ein solcher Dialog ist nicht erforderlich, da alle Eigenschafts-Variablen in der Eigenschaftenliste angezeigt werden.

Dieser Dialog muss modal angezeigt werden, damit das Ergebnis erst zurückgeliefert wird, wenn die Bearbeitung abgeschlossen ist. Als Ein- und Ausgabeparameter wird hierbei üblicherweise [cX.cXtension.Befehlsparameter(X)] verwendet.

 

::  Muster_!Dialog_Lesen

  ***  Bearbeitung der Beispiel-cXtension

  Aufbau und Verwaltung des (modalen) Dialogs

Zurück

 

!Designerbild  (optional - nur für Anzeigeelemente-cXtensions)

Mit !Designerbild wird angegeben, welches Symbol die cXtension im Dialog-Designer haben soll (Bilddateiname oder Bildquelle).

Nur wenn dieses angegeben wurde, erkennt click.EXE die cXtension als designbaren Befehl an, der ein (kombiniertes) Element im Anzeigefenster darstellen kann.

 

::  Muster_!Designerbild_Lesen

  ***  Designerbild der Beispiel-cXtension

Zurück   (Ergebnis: '%ICON%')

 

!Menüeintrag  (optional)

Mit !Menüeintrag wird angegeben, dass im Extras-Menü des cX-Editors ein zusätzlicher Menüeintrag eingefügt werden soll. Als Text wird der Name der cXtension dargestellt, als Menübild das Designerbild (falls vorhanden).

Wird der Menüeintrag angeklickt, wird die Eigenschaft ausgelesen. Hier kann etwa ein Hilfsdialog angezeigt werden. Hinweis: An dieser Stelle kann nicht auf Eigenschaften eines verwendeten cXtension-Befehls zugegriffen werden.

 

::  Muster_!Menüeintrag_Lesen

  ***  Menüeintrag der cXtension wurde angeklickt

  Meldung 'Dies ist die Beispiel-cXtension', Titel 'cXtension-Menüeintrag', Buttons 'Nur OK', Symbol 'Information'

Zurück

 

 

!Ausführen

Unter !Ausführung kommt der Code, der beim Ausführen des Befehls abgearbeitet werden soll. Die Befehlsparameter enthalten die jeweiligen Parameter des Befehls.

 

::  Muster_!Ausführen_Lesen

  ***  Ausführung der Beispiel-cXtension

Hier kommt der Code hin, der ausgeführt werden soll !

Zurück

 

Bei Anzeigeelemente-cXtensions wird hier das Steuerelement zusammengesetzt, indem normale click.EXE-Befehle für einen Dialog angegeben werden (ohne den Anzeigefenster-Befehl).

Die Elemente werden innerhalb einer intern erzeugten Zeichenfläche (siehe Bild-Element) angeordnet, deren Eigenschaften wie Größe oder Farben im cXt-Befehl selbst angegeben werden. Zur Laufzeit kann dadurch auch mit [.Zeichenfläche(cXt-ID).Eigenschaft] oder [.Element(cXt-ID).Eigenschaft] zugegriffen werden.

 

 

Für die Initialisierung der cXtension können eine Initialisierungs- und eine Aufräumroutine verwendet werden, die beim Starten bzw. Beenden des Hauptskripts aufgerufen werden. Hier ein kleines Beispiel dazu :

 

::  Muster_!Start_Lesen

***  Initialisierungs-Routine für die cXtension

Hier kommt nun der Initialisierungscode hin, z.B. die Definition von Vorgabewerten

Zurück

 

::  Muster_!Stopp_Lesen

  ***  Aufräum-Routine für die cXtension

Hier kommt ein Aufräumskript hin

Zurück

 

 

Weiterhin gehört optional zum Aufbau einer cXtension eine Initialisierungs- und eine Aufräumroutine für das Objekt, die beim Laden der cXtension bzw. beim Beenden der EXE aufgerufen werden. Im Info-Feld von ::Objekt(<Name>)_Start kann zudem die Beschreibung der cXtension eingetragen werden.

Hier ein kleines Beispiel dazu :

 

::  Objekt(Muster)_Start, Info: Muster-cXtension

 

::  Muster_Start

  ***  Initialisierungs-Routine für das Objekt

Hier kommt nun der grundlegende Initialisierungscode hin

Zurück

 

::  Muster_Stopp

  ***  Aufräum-Routine für das Objekt

Hier kommt ein finales Aufräumskript hin

Zurück

 

::  Objekt(Muster)_Ende

 

 

 


cX-Webseite: http://www.clickexe.net