Von Version < 3.2 >
bearbeitet von rth
am 18.04.2019, 12:26
Auf Version < 3.3 >
bearbeitet von rth
am 18.04.2019, 14:23
< >
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -8,31 +8,57 @@
8 8  
9 9  == Definition von Bundle-Properties durch den Plugin-Entwickler ==
10 10  
11 -Die Oberfläche von {{formcycle case="dat"/}} bietet die Möglichkeit neue Properties mit Namen und Wert am jeweiligen Plugin-Bundle zu pflegen.
11 +{{figure image="plugin_props_config_ui.png" title="FORMCYCLE Bundle-Properties: Darstellung in Oberfläche" width="500"}}
12 +Durch Einbinden des Interfaces //IBundleProperties// können konfigurierbare Optionen in der Oberfläche von {{formcycle case="dat"/}} angezeigt werden.
13 +{{/figure}}
14 +
15 +Die Oberfläche von {{formcycle case="dat"/}} bietet die Möglichkeit neue Properties mit Namen und Wert am jeweiligen Plugin-Bundle zu hinterlegen.
12 12  In den meisten Fällen ist es jedoch sinnvoll, wenn der Name (Zugriffsschlüssel, muss eindeutig innerhalb der Bundle-Properties sein)
13 -und gegebenenfalls ein Default-Wert für ein Property, bereits durch den Plugin-Entwickler festgelegt werden.
17 +und gegebenenfalls ein Standard-Wert für ein Property, bereits durch den Plugin-Entwickler festgelegt werden.
14 14  \\Damit werden zum einen Schreibfehler beim Anlegen der Zugriffsschlüssels durch den Plugin-Benutzer ausgeschlossen und
15 -zum Anderen erhält der Plugin-Benutzer eine Sicht auf alle durch den Plugin-Entwickler unterstützten Konfigurationswerte ohne Dokumentationen lesen zu müssen.
19 +zum Anderen erhält der Plugin-Benutzer eine Sicht auf alle durch den Plugin-Entwickler unterstützten Konfigurationswerte.
16 16  
17 -=== Interface IBundleProperties ===
21 +== Schnittstelle IBundleProperties ==
18 18  
19 -{{figure image="plugin_props_config_ui.png" title="FORMCYCLE Bundle-Properties: Darstellung in Oberfläche" width="500"}}
20 -Durch Einbinden des Interfaces //IBundleProperties// können konfigurierbare Optionen in der Oberfläche von {{formcycle case="dat"/}} angezeigt werden.
21 -{{/figure}}
23 +Die Schnittstelle bietet folgende Methodesignaturen:
22 22  
23 -Das Interface //IBundleProperties //bietet mit der Schnittstellen-Methode //getConfigProperties()// die Möglichkeit Bundle-Properties
24 -vorzukonfigurieren.
25 -Die Methode muss eine Map mit Objekten vom Typ //IBundleConfigParam// zurückliefern.
25 +* **//public Map<String, IBundleConfigParam> getConfigProperties(IPluginResourceHelper resHelper, Locale currentLocale)//**
26 +
27 +=== Methode: //getConfigProperties// ===
28 +
29 +Dient zur Konfiguration von Eigenschaftswerten, die allen Java-Klassen innerhalb des Plugin-Bundles zur Verfügung stehen sollen.
30 +
31 +==== Übergabewerte: ====
32 +
33 +
34 +; IPluginResourceHelper
35 +: Objekte zum Zugriff auf die im Plugin-Bundle enthaltenen Datei-Ressourcen.
36 +; Locale
37 +: Das für den aktuell angemeldeten Nutzer festgelegte //Locale//-Objekt (enthält Informationen zur Sprache und Region).
38 +Dieses kann zum Ermitteln von sprachabhängigen Texten verwendet werden.
39 +
40 +==== Rückgabewerte: ====
41 +
42 +
43 +Die Methode muss ein Objekt vom Typ //java.util.Map// mit Value-Objekten vom Typ //IBundleConfigParam// zurückliefern.
26 26  Es existieren zwei mögliche Implementierung von //IBundleConfigParam//:
27 27  
46 +; BundleConfigGroupItem
47 +: Dieses Element kann zur Strukturierung der Listendarstellung in der Oberfläche von {{formcycle case="dat"/}} verwendet werden.
48 +; BundleConfigParam
49 +: Dient zur Definition eines Bundle-Properties. Ein Objekt definiert die folgenden Eigenschaften:
50 +: //name//
51 +:: Der Name oder Zugriffsschlüssel einer Property.
52 +: //description//
53 +:: Beschreibung zu einer Property. Wird per //Mouseover// über den //Property//-Namen in der Oberfläche eingeblendet. Kann verwendet werden, um dem Nutzer des Plugins nähere Information zur Verwendung oder möglicher Wertebereiche des Parameters anzuzeigen.
54 +: //mandatory//
55 +:: Legt fest, ob der Parameter in der Oberfläche als Pflichtparameter dargestellt wird und ein Validierung auf Vorhandensein eines Wertes beim Abspeichern durchgeführt wird.
56 +: //crypticValue//
57 +:: Legt fest, ob der Wert der Property wie bei einem Passwordfeld maskiert werden soll. Standardwert ist {{code}}false{{/code}}.
58 +: //defaultValue//
59 +:: Ermöglicht die Festlegung eines Defaultwertes durch den Entwickler. Standardwert ist {{code}}null{{/code}}.
28 28  
29 -* {{litem title="BundleConfigGroupItem"}}Dieses Element kann zur Strukturierung der Listendarstellung in der Oberfläche von {{formcycle case="dat"/}} verwendet werden.{{/litem}}
30 -* {{litem title="BundleConfigParam"}}Dient zur Definition eines Bundle-Properties. Es können die folgenden Eigenschaften definiert werden.{{/litem}}
31 -** {{litem title="name"}}Der Name oder Zugriffsschlüssel einer Property.{{/litem}}
32 -** {{litem title="description"}}Beschreibung zu einer Property. Wird per //Mouseover// über den //Property//-Namen in der Oberfläche eingeblendet. Kann verwendet werden, um dem Nutzer des Plugins nähere Information zur Verwendung oder möglicher Wertebereiche des Parameters anzuzeigen.{{/litem}}
33 -** {{litem title="mandatory"}}Legt fest, ob der Parameter in der Oberfläche als Pflichtparameter dargestellt wird und ein Validierung auf Vorhandensein eines Wertes beim Abspeichern durchgeführt wird.{{/litem}}
34 -** {{litem title="crypticValue"}}Legt fest, ob der Wert der Property wie bei einem Passwordfeld maskiert werden soll. Standardwert ist {{code}}false{{/code}}.{{/litem}}
35 -** {{litem title="defaultValue"}}Ermöglicht die Festlegung eines Defaultwertes durch den Entwickler. Standardwert ist {{code}}null{{/code}}.{{/litem}}
61 +== Implementierungsbeispiel ==
36 36  
37 37  Das nachfolgende Codebeispiel zeigt eine mögliche Implementierung:
38 38  
Copyright 2000-2025