Vlastní Control
Controls jsou třetím typem pluginů — DLL ve složce Controls vedle
QInsight.exe. Po restartu aplikace se control objeví v panelu Controls
a lze ho přetahovat na pracovní plochy jako kterýkoli dodávaný prvek.
Základ
Control implementuje rozhraní IControlBase; prakticky se dědí ze základní
třídy ControlBase, která obstará společné vlastnosti (pozice, velikost,
barvy, zámek, serializaci vazeb na proměnné). Klíčové body:
- Label ve specifikaci = text v panelu Controls.
BindVariable(variable)— voláno při přetažení proměnné na control. Control s jednou hodnotou (jako Gauge) předchozí proměnnou nahradí, vícehodnotový (jako Graph) přidává.UpdateVariableValueAsync(...)— sem přicházejí živé hodnoty; control si sám řídí, jak často se překreslí (Refresh time).OnEditToRun/OnRunToEdit— reakce na přechod mezi editačním a runtime režimem (např. graf si vyčistí data).- Vlastnosti, které mají přežít uložení projektu, se serializují spolu s controlem.
MVVM
UI controlu se píše striktně MVVM: skládání v XAML, interakce přes bindingy a commandy, logika ve ViewModelu — bez logiky v code-behind. Referenčním vzorem je dodávaný Single-Signal control.
Nasazení
Zkompilovanou DLL nakopírujte do složky Controls a restartujte QInsight.
Control se objeví v panelu Controls; jeho vazby a nastavení se ukládají
do projektu automaticky.
Dále
Přehled všeho, co QInsight dodává — Reference.

