-
Notifications
You must be signed in to change notification settings - Fork 13
ScriptWidget (cz) metody widgetů přístupné ze scriptu
Každý widget dědí z Qt třídy QWidget, proto lze použít i věci z QWidget.
Vlastnosti (properties):
http://qt-project.org/doc/qt-4.7/QWidget.html#propertySection
var cislo = newNumberWidget("neco");
cislo.width = 100;
Metody (public slots):
http://qt-project.org/doc/qt-4.7/QWidget.html#slotSection
var barva = newColorWidget("barva");
barva.setDisabled(true);
##NumberWidget (číslo)
###setValue(číslo nebo string)
Nastaví zobrazené číslo.
Příklad:
var cislo = newNumberWidget("ASCII kód klávesy");
function onKeyPress(key) {
cislo.setValue(key.charCodeAt(0));
}
##BarWidget (sloupcový bar) ###setValue(číslo) Nastaví hodnotu baru
###setRange(min, max) Nastaví rozmezí hodnot baru
###rotationSelected(rotace) Nastaví otočení baru. rotace musí být 0 (na výšku) nebo 1 (na šířku)
var bar = newBarWidget("bar");
bar.setRange(0, 100);
bar.rotationSelected(1);
var cnt = 0;
function onKeyPress(key) {
bar.setValue(cnt++);
}
##ColorWidget (barva) ###setValue(r, g, b); setValue("#FFFFFF") Nastaví zobrazenou barvu. Buďto jako 3 integery (r, g, b) nebo jako html hex string ("#FFFFFF")
var barva = newColorWidget("barva");
function onDataChanged(data, dev, cmd, index) {
barva.setValue(data[0], data[1], data[2]);
return "";
}
##GraphWidget (graf) ###addCurve("jméno", "barva") Vytvoří a vráti objekt křivky grafu. barva může být html barva ("red", "blue", ...) nebo hex string ("#000000"). Vrácené křivce se dají nastavovat další parametry:
- addPoint(index, hodnota) - přidá bod do grafu. Pořadí určuje index (je vynesen na ose y).
- clear() - vymaže všechny body křivky
###setAxisScale(osaX, min, max) Nastaví měřítko osy. osaX je boolean, pokud chcete nastavit měřítko ose X, je true, pokud ose Y tak je false. min a max jsou minimální a maximální zobrazené hodnoty osy.
###updateVisibleArea() Přesune graf na posledni bod křivek.
var graf = newGraphWidget("graf");
graf.setAxisScale(true, -50, 150); // Nastavení měřítka osy X
graf.setAxisScale(false, -110, 110); // Nastavení měřítka osy Y
var krivka = graf.addCurve("sin", "red"); // Vytvoření křivky
var idx = 0;
var val = 0;
function onKeyPress(key) {
switch(key)
{
case "c":
krivka.clear(); // smazani vsech bodu krivky
idx = 0;
break;
default:
{
for(var i = 0; i < 100; ++i)
{
krivka.addPoint(idx++, Math.sin(val)*100);
val += 0.1;
}
break;
}
}
graf.updateVisibleArea(); // Přesunout na konec grafu
}
##InputWidget (Vstup) Tenhle widget umožňuje přidat nějáký vstupní widget (tlačítko, políčko pro text, ...) a zpracovávat ho ve scriptu.
TODO