Sever - Dynamic GUI Editor
DynamischDynamically generiertegenerated GUIs kommenare used in verschiedenenvarious Pluginsplugins. zumThese Einsatz.can Diesebe könnenconveniently mithilfecreated desand easily edited using the Dynamic GUI EditorsEditor. komfortabelGUI erstelltelements undcan einfachbe bearbeitetprovided werden.with Zurrules weiterento Unterstützungfurther dersupport Benutzerinteraktionuser könneninteraction. GUI-ElementeThis mitallows Regelnthe versehencontent werden.and Dadurchfunction kannof Inhaltother undelements Funktionto andererbe Elementecontrolled gezieltin gesteuerta werden.targeted manner.
AufbauOverview
- Layout
- Edit GUI
- Controls
- Rules
- XML definition
Layout
DasThe Hauptfenstermain gliedertwindow sichis divided into three areas. On the left are the available controls, in dreithe Bereiche.center Linksis befindenthe sichdesign dieview, zurand Auswahlon stehendenthe Kontrollelemente,right inare derthe Mittedetailed istsettings diefor Design-Ansichtthe zuselected finden und rechts die Detaileinstellungen des jeweils ausgewählten Elements.element.
Edit GUI bearbeiten
NeuCreate erstellennew
ZumThere Erstellenare einerseveral neuenways GUIto stehencreate mehrea Möglichkeitennew zurGUI. Verfügung.Via Überthe dasfile Dateimenumenu File -> New oderor in derthe Menüleistemenu kannbar einea neuenew leereempty GUI erstelltcan werden.be Dabeicreated. müssenA einname Nameand undthe derdestination Zielortmust angebenbe werden.specified.
WeiterIt bestehtis diealso Möglichkeit,possible eineto neuecreate a new GUI alsas Kopiea einercopy bestehendenof zuan erstellen.existing Diesesone. geschiehtThis überis dasdone Kontextmenüvia desthe Reiterscontext einermenu bereitsof geöffnetenthe tab of an already opened GUI. DabeiA wirdcopy eineis Kopiecreated imin gleichenthe Verzeichnissame angelegtdirectory undand alleall Einstellungensettings samtincluding definiertendefined Regelnrules werdenare transferred 1:1 übernommen.1.
UmbenennenRename
DasRenaming Umbenennenis erfolgtdone übervia dasthe Kontextmenücontext desmenu Reitersof einerthe geöffnetentab of an opened GUI. Über Rename wirdopens derthe entsprechendecorresponding Dialog geöffnet.dialog.
ÖffnenOpen undand schließenclose
EineAn bestehendeexisting GUI-DateiGUI kannfile übercan dasbe Dateimenuopened via File -> Open oderin the file menu or in derthe Menüleistemenu geöffnetbar. werden.Closing Dasis Schließendone erfolgt übervia File -> Close imin Dateimenü,the file menu, in derthe Menüleistemenu oderbar or Close imin Kontextmenüthe descontext Reitersmenu einerof geöffnetenthe tab of an open GUI. SollteIf die zu schließendethe GUI nichtto gespeichertebe Änderungclosed beinhalten,contains erfolgtunsaved einechanges, Rückfrage.a query is made.
SteuerelementAdd hinzufügencontrol element
UmTo einadd Elementan hinzuzufügen,element, wirdthe dasdesired gewünschteelement Elementis linksselected in derthe Auswahlselection selektierton undthe perleft Dragand placed in the desired position in the design view using drag & Drop in der Design-Ansicht an gewünschter Position platziert.drop.
SteuerelementRemove entfernencontrol element
MarkierteSelected Elementeelements könnencan überbe removed via [Entf]Del] oderor dasthe Kontextmenucontext entferntmenu. werden.There Esis erfolgtalways dabeia immerconfirmation eineprompt. Sicherheitsabfrage.When Beimdeleting, Löschenall werden automatisch alle Regelnrules (s.see Regeln)Rules) gelöscht,are welcheautomatically mitdeleted demwhich Elementwere direktdirectly assoziiertassociated warenwith oderthe eselement alsor Zielhad gesetztset hatten.it as a target.
PositionChange verändernposition
ZumTo Ändernchange derthe Positionposition, werdenthe diedesired gewünschtenelements Elementeare markiertselected undand per Dragdragged & Dropdropped anto ihrertheir neuenew Positionposition.
.
KopierenCopy undand Einfügenpaste
Ausgewählte.
Selected könnenelements übercan be copied using [Strg]Ctrl]+[c] oderor dasthe Kontextmenücontext kopiertmenu undand mitpasted again at any position using [Strg]Ctrl]+[v] oderor überthe dascontext Kontextmenümenu. anThis beliebigerprocess Stelleis wiederalso eingefügtpossible werden.between Diesermultiple Vorgangopen istGUIs, auchbut zwischenno mehrerenrules geöffnetenare GUIscopied möglich,along jedochwith werdenthem, dabeias keinetheir Regelnconsistency mitkopiert,can dano ihrelonger Konsistenzbe nicht mehr gewährleistet werden kann.guaranteed.
VorschauPreviewing undand Testentesting einera GUI
Über.
HierHere könnenall alleelements Elementewith mittheir ihrenset gesetztenproperties Eigenschaftenand unddefined definierten Regelnrules (s.see Regeln)Rules) getestetcan undbe auftested ihreand Funktionalitätchecked überprüftfor werden.functionality.
ÄnderungenSave speichernchanges
.
ZumFor Speichernsaving, stehenthe functions save and save all are available in demthe Menüleistemenu undbar imand Dateimenüin unterthe Filefile diemenu Funktionenunder speichernFile.
.
Controls
Textbox
TextboxenText verfügenboxes überhave dreithree spezifischespecific Eigenschaften:properties:
- ReadOnly,
gibtspecifiesan,whetherobthederuserBenutzerisdenallowedgesetztentoTextediteditierenthedarf.set text. - Mask,
eineanEingabemaskeinputzurmaskUnterstützungtobeisupportdertheEingabe,input,zumforBeispielexample __:__:__:__ - Validation Regex,
hierherekann einea Regular ExpressiongesetztcanwerdenbenachsetwelcherafterdiewhichValidierungthedervalidationEingabeoferfolgt.the input takes place.
ComboBox
ÜberVia wirdthe dercontent Inhaltof einera ComboBox bearbeitet.is Hieredited. könnenHere Elementeyou hinzugefügt,can entferntadd oderor ihreremove Positionelements geändertor werden.change their position.
MitAlso Defaultfor kannthe einelements Wertof alsa vorselektierterComboBox Standwertapplies, definierttheir wird.name Esmust kannbe nurunique einwithin Elementthe alsComboBox. StandartwertIf definiertan sein.attempt Wirdis einmade neuesto Elementassign alsa solchesname markiert,twice, wirdthe dieseprogram Eigenschaftwill beimautomatically altenadjust automatischit aufto Falsea gesetzt.valid value.
Über Value wird der intern zu nutzende Wert definiert.
Properties
EmptyEach erzeugtcontrol has properties. These can be viewed and edited in derthe Darstellungright einpart. leeresChanges Auswahlelement.
Auchvisible für die Elemente einer ComboBox gilt, ihr Name muss innerhalb der ComboBox einzigartig sein. Wird versucht, einen Namen doppelt zuzuweisen, wird dieser automatisch vom Programm auf einen gültigen Wert angepasst.
Eigenschaften
Jedes Steuerelement verfügt über Eigenschaften. Diese können im rechten Teil eingesehen und bearbeitet werden. Änderungen werden direktdirectly in derthe Design-Ansichtdesign sichtbar.view. DabeiEach hatelement jedeshas Elementa einenname, Namen,which welcheris innerhalbused einerwithin a GUI derfor Zuordnungassignment dientand undmust deshalbtherefore einzigartigbe seinunique. muss.This Diesesis wirdensured durchby dasthe Programmprogram. sichergestellt.If Solltean versuchtattempt werden,is einenmade bereitsto vergebenenassign Namenan einemalready Elementassigned zuzuweisen,name wirdto dieseran automatischelement, aufit einenwill gültigenautomatically Wertbe angepasst.adjusted to a valid value.
FriendlyName ist jeweils dieis in dereach GUIcase anzuzeigendethe Beschriftung.label to be displayed in the GUI.
Mask-TokensMask tokens
UnterMask tokens can be defined under "Mask". könnenThis Mask-Tokensdefines definiertthe werden.formats Damitof werdenthe dieinput Formate der Eingabefelder festgelegt.fields.
A | |
a | |
L | |
l | |
\ | |
( |
MehrMore Informatioenninformation unterat Telerik Mask Tokens.
EinAn Beispielexample einerof Maskea fürmask dasfor Eigebenentering einera MAC-Adresse:MAC address:
AA-AA-AA-AA-AA-AA
Validation Regexregex
MitThe dervalidation Validationregex Regexcan könnenbe dieused to limit the characters allowed in derthe Eingabe erlaubten Zeichen beschränkt werden.input.
Ein.
An Einerexample Regexof diea nurregex Buchstabenthat vonallows only letters from A bisto FF, erlaubt,for fürentering dasa EigebenMAC einer MAC-Adresse:address:
^[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$
AlsElements marked as Internal markierte Elemente sindare essentiellessential fürfor diethe Funktionsweisefunctionality einesof Plug-Ins.a Werdenplug-in. dieseIf gelöschtthese oderare ihrdeleted Nameor geändert,their kannname dieis Funktionchanged, desthe jeweiligenfunction Plug-Insof nichtthe mehrrespective gewährleistetplug-in werden.can no longer be guaranteed.
RegelnRules
DasThe Regelkonzeptrule istconcept einis festeran Bestandteilintegral dynamischerpart of dynamic GUIs. RegelnRules ermöglichenmake es,it diepossible Auswahlto eineslink ComboBox-Elementesthe mitselection weiterenof automisch auszuführenden Aktionen zu verbinden. So kann zum Beispiel ein Wert einer anderena ComboBox selektiert,element oderwith derfurther Inhaltactions einesto Textfeldesbe verändertexecuted werden.automatically. For example, a value of another ComboBox can be selected, or the contents of a text field can be changed.
EinA ComboBox-ElementComboBox kannelement can contain n Regeln enthalten.rules.
AufbauLayout
EineA Regelrule bestehtconsists ausof fünffive Informationen:pieces of information:
DasThe übergeordneteparent GUI-Element.GUI element.
DasThe auslösendetriggering Element.element.
DasThe Ziel-GUI-Element.target GUI element.
DerThe zucontent setzendeto Inhalt.set.
EineAn Aktion,action diethat beschreibt,describes waswhat mitto demdo Zielwith geschehenthe soll.target.
BisAll aufsettings dasexcept übergeordnetefor GUI-Elementthe könnenparent alleGUI Einstellungenelement nachträglichcan bearbeitetbe werden.edited later.
RegelübersichtRules overview
EineAn Übersichtoverview allerof all rules present in derthe ausgewähltenselected GUI vorhandenenis Regelnaccessed wird übervia in derthe Menüleistemenu aufgerufen.bar.
Regeln hinzufügenAdd & bearbeitenedit rules
Hierzu stehen zwei verschiedene Varianten zur Verfügung. Die komfortabelste Möglichkeit besteht über die Regelübersicht, die andere erfolgt über die Eigenschaften eines ComboBox-Elementes..
VarianteThere Regelübersicht:are two different variants available for this purpose. The most convenient option is via the rule overview, the other is via the properties of a ComboBox element.
.
Variant rule overview:
NeueCreate Regelnew anlegenrule
DasThe Anlegencreation einerof neuena Regelnew erfolgtrule überis done via in derthe Menüleiste.menu Imbar. folgendenIn Dialogthe werdenfollowing vondialog, obenthe nachdesired untensettings dieare jeweilsassigned gewünschtenin Einstellungeneach zugewiesen.case from top to bottom.
VorhandeneEdit Regelexisting bearbeitenrule
UmTo eineedit Eigenschafta derproperty Regelof zuthe bearbeiten,rule, wirdselect dieseit in derthe Regelübersichtrule selektiertoverview undand dannthen mitpress [F2] oderor perdouble-click Doppelklickto inswitch dento Bearbeitungsmodusedit gewechselt.mode.
RegelRemove entfernenrule
UmTo einedelete oderone mehrereor Regelnmore zurules, löschen,they werdenare diesehighlighted markiertand undthen danndeleted übervia in derthe Menüleistemenu oderbar mitor with [Entf]Del]. gelöscht.A Esconfirmation erfolgtprompt einewill Sicherheitsabfrage.be displayed.
VarianteVariant Eigenschaftenproperties einesof ComboBox-Elementes:a ComboBox element:
DieseThis Variantevariant bietetis sichuseful an,if wennyou manwant beimto Hinzufügendefine vonrules ComboBox-Elementendirectly direktwhen Regelnadding definierenComboBox möchte.elements. ÜberVia in denthe Eigenschaftenproperties einenof ComboBox-Elementsa wirdComboBox derelement Regel-Editorthe geöffnet.rule editor is opened.
NeueAdd Regelnew hinzufügenrule
EineA neuenew leereempty Regelrule wirdis überadded via hinzugefügt..
VorhandeneEdit Regelexisting bearbeitenrule
UmTo eineedit vorhandenean Regelexisting zurule, bearbeiten,select wird diese linksit in derthe Auswahlselection selektiert.on Daraufhinthe könnenleft. imThen rechtenits Teilproperties descan Fenstersbe ihreedited Eigenschaftenin editiertthe werden.right part of the window
.
RegelRemove entfernenrule
UmTo einedelete oderone mehrereor Regelnmore zurules, löschen,they werdenare diesehighlighted markiertand undthen danndeleted übervia gelöscht.There Eswill erfolgtbe keineno eineconfirmation Sicherheitsabfrage.prompt.
XML-XML Definition
BeiThe derunderlying zugrundeliegendenXML XML-Definitiondefinition handeltis esa sichgeneral umformat einfor allgemeinesdescribing Formatconfigurable zurgraphical Beschreibunginterfaces vonwithin konfigurierbaren grafischen Oberflächen innerhalb desthe SCCM Managers.Manager.
Im.
The wirdfollowing derexplains Aufbauthe derstructure Konfigurationsdateiof „the configuration file "ClientCreater_OSDVariables.xml“xml"
.
EsYoukönnencan define n-vielemanyControls definiert werden.controls. Dabei lassen sich aktuell zwei Typen definieren: „TextBox“ und „ComboBox“.DabeiAmussnamebeimustjedembeControldefinedeinforNameeachdefiniertcontrol.werden.ThisDiesermustmussbeeindeutigunique,sein,maydarfnotkeinecontainLeerzeichenanybeinhaltenspacesundandhathas three functions (iminBeispielthe example Client Creator)drei Funktionen..InternerNameInternal
desnameControls,ofumthediesescontrolpertoRegelbeansteuernablezutokönnen.control it by rule.-
Name
derofComputervariable.the computer variable. -
Label
desofControls,thefallscontrol,keinif no FriendlyNamedefiniertwaswurdedefined.
AußerdemkannIn
einaddition, a FriendlyNamedefiniertcanwerden,bedieserdefined,dientthisdannthenalsservesLabelas a label inderthe GUI.JedesControlEach
kanncontroloptionalcaneinenoptionallyDescription-Tagcontainbeinhalten.aDortdescriptionkanntag.eineABeschreibungdescriptionhinterlegtcanwerden,bediestoredinterherthere,alswhichTooltipisüberthendemdisplayedjeweiligenasControlaangezeigttooltipwird.above the respective control.JedesControlEach
kanncontrol can have n-vielemanyItems haben.items.EinItemAn
benötigtitemwiederagainzwingendneedseinenaNamenmandatoryundnameoptionalandeinenoptionally a FriendlyNamezurtoDarstellungrepresent it (andernfallsotherwisewirdtheautomatischnamederisNameusedbenutzt)automatically).BeieinerIn
ComboBoxasollteComboBox,dastheItemitemauchshouldeinenalsoValuehavehaben.aDieservalue.istInim Beispielthe Client Creatorderexample,WertthisderisComputervariable.the value of the computer variable.DasStandard-ItemThe
einerdefault item of a ComboBoxlässtcansichbeübersetdasviaAttributthe IsDefaultsetzen.attribute.AnsonstenOtherwise,istnoneinitialiskeinsinitiallyausgewählt.selected.JedesItemEach
kannitem can have n-vielemanyRulesrules.haben.AsSobaldsoondiesesasItemthisdannitemspäteris selected later indertheGUIGUI,ausgewähltallwird,rulessetzenassignedalletoihmitzugeordnetenareRegeln ein.applied.-
A target is always defined in a rule, i.e. the name of the control that is to be influenced.
-
In
eineraddition,RuleawirdTargetItemimmeriseindefined,Targete.g.definiert,the item that is to be automatically selected in another ComboBox. -
Optionally, a so-called action can also
derbeNamedefined.desThereControls,arewelchescurrentlybeeinflusstfourwerdendifferentsoll.ones: Außerdem wird ein TargetItem definiert, also z.B. das Item, das automatisch in einer anderen ComboBox ausgewählt werden soll.Optional kann auch eine sog. Action definiert werden. Hier gibt es momentan vier verschiedene: „Show“"Show",„Hide“"Hide",„Enable“"Enable",„Disable“"Disable".DadurchThiskönnencananderebeControlsusedzusätzlichtobeeinflusstadditionallywerden.influence other controls.
-
EineA TextBox
kanncanaußerdemalsonochhavezusätzlicheadditionalAttributeattributesundandTags haben.tags.EskannA
einemaskMaskecandefiniertbewerden,defined,dazuforkönnenthisdietheAttributeattributes„Mask“und"Mask„MaskType“gesetzt"andwerden"MaskType "can be set (sieheseeBeispiel)example).EskannAn
einadditionalzusätzlichertagTag"ValidationRegex"„ValidationRegex“hinzugefügtcanwerden.beDadurchadded.bekommtThisdiegives the TextBoxdietheMöglichkeit,possibilitysichtobeivalidateBenutzereingabenitselfselbstonzuuservalidieren.input.AußerdemerkenntFurthermore,
einea TextBoxnurrecognizesihronlyerstesitsItem.firstDiesesitem.wirdThiszwingendisbenötigt,absolutelydamitnecessaryessoüberhauptthateinenthereValueisgibtaundvalueumatz.B.allüberandeinetoRulebedaraufablezugreifentozuaccesskönnen.it via a rule, for example.
FürkundenspezifischeFor
PluginscustomlässtpluginssichthisdiesessystemSystemcanebenfallsalsoeinsetzenbe used
BeispielkonfigurationExample unconfiguration dieand daraus generiertethe GUI
generated from it
DasersteThe
ControlfirstimcontrolBildin the image (OS Name)gehörtbelongsinterninternallyzumto the Client Creator.DerComputernameThe
alsfirst control in the image (OS Name) belongs internally to the Client Creator. aThe computer name as TextBox (ebenfallsalsointern)internal):derthereguläreregularAusdruckexpression (ValidationRegex)erwartetexpectsGroßbuchstaben.uppercase letters.-
Netbios
Domaindomainalsas ComboBox:durchthedie dazugehörige Regel wird automatisch der dazu passendecorresponding FQDNgewählt.is automatically selected by the associated rule. -
Primary Site Server:
DerThe FriendlyNamefürfordastheControlcontrolistis PrimarySiterServer=ExampleSite01,tatsächlichbutwirdactuallyaberthespätervariableder Variablenwert (Value)value ExampleSite01gewählt.willDiesbegiltchosengenausolater.fürThisdenisVariablenname,thediesersamewirdforspäterthealsvariableOSDPrimarySiteServername,gesetzt.this will be set later as OSDPrimarySiteServer.