Čeština / English
Login

Návody / Pluginy pro QDevKit: Přehled API

Autor: Marek Vavruša ()
Update: 27.9.2009

Pro přehlednost si shrneme použité API.

1. Python

  • app - reprezentace celé aplikace, umožňuje pracovat s konfigurací programu (QDevKit)

    • refreshApplication() - obslouží čekající zprávy v event loop (volat z Pythonu v případě dlouho trvajícího skriptu pro obnovení GUI)

    • reloadSettings() - uplatní změny v nastavení

    • setSettingsValue(QString key, QVariant val) - nastaví hodnotu konfigurace

    • settingsValue(QString key) - získá hodnotu z konfigurace

  • deviceMgr - seznam připojených zařízení (QDeviceMgr)

    • release(QFitKit device)* - uvolní zařízení pro další použití

    • acquire(int deviceId) - zabere zařízení bez aktivního terminálu

    • device(int deviceId) - vrátí zařízení pro dané ID

    • count() - celkový počet zařízení

    • countFree - počet neobsluhovaných zařízení

    • countAcquired() - počet obsluhovaných zařízení

  • mainWindow - hlavní okno, zpřístupňuje dokovací oblast (MainWindow)

    • showStatus(const QString& msg, int timeout = 0) - zobrazí zprávu ve stavové liště

    • showInformation(const QString& caption, const QString& msg) - zobrazí zprávu

    • showQuestion(const QString& caption, const QString& msg) - zobrazí otázku

    • showError(const QString& caption, const QString& msg) - zobrazí chybovou zprávu

    • removeFromDock(QDockWidget widget)* - odstraní widget z dokovací oblasti

    • addToDock(Qt::DockWidgetArea area, QDockWidget widget)* - přidá widget do dokovací oblasti

    • toolBar() - lišta nástrojů aplikace (ToolBar)

    • appTree() - seznam aplikací (FkTreeWidget)

    • tabs() - aktivní terminály (ConnectionTabs)

  • plugin - plugin (PluginScripted)

    • signal timeout() - signál vypršení časovače

    • singleShot(msec) - časovač, který se provede jen jednou

    • setTimer(msec) - nastaví časovač

  • jobScheduler() - plánovač úloh na pozadí (JobScheduler)

    • updateDetails() - obnoví informace o stavu úloh

    • remove(Job job)* - odstraní úlohu z plánovače

    • append(Job job)* - přidá novou úlohu do plánovače

  • tray() - ikona systémové lišty (TrayIcon)

    • showMessage(const QString& title, const QString& msg, int timeout) - zobrazí zprávu jako upozornění v systémové liště

    • setToolTip(const QString& msg) - nastaví zprávu jako nápovědu ikony v systémové liště

2. C++

  • app() - reprezentace celé aplikace, umožňuje pracovat s konfigurací programu (QDevKit)

    • refreshApplication() - obslouží čekající zprávy v event loop (volat v případě dlouho trvající akce pro obnovení GUI)

    • reloadSettings() - uplatní změny v nastavení

    • setSettingsValue(QString key, QVariant val) - nastaví hodnotu konfigurace

    • settingsValue(QString key) - získá hodnotu z konfigurace

  • components() - vyměnitelné komponenty, pro programování FITkitu (Components)

    • flash() - vrátí interface pro flashování FITkitu

    • setFlash(FlashInterface iface)* - pro nahrazení interface pro programování FITkitu

  • deviceMgr() - seznam připojených zařízení (QDeviceMgr)

    • release(QFitKit device)* - uvolní zařízení pro další použití

    • acquire(int deviceId) - zablokuje zařízení bez aktivního terminálu

    • device(int deviceId) - vrátí zařízení pro dané ID

    • count() - celkový počet zařízení

    • countFree - počet neobsluhovaných zařízení

    • countAcquired() - počet obsluhovaných zařízení

  • mainWindow() - hlavní okno, zpřístupňuje dokovací oblast (MainWindow)

    • showStatus(const QString& msg, int timeout = 0) - zobrazí zprávu ve stavové liště

    • showInformation(const QString& caption, const QString& msg) - zobrazí zprávu

    • showQuestion(const QString& caption, const QString& msg) - zobrazí otázku

    • showError(const QString& caption, const QString& msg) - zobrazí chybovou zprávu

    • removeFromDock(QDockWidget widget)* - odstraní widget z dokovací oblasti

    • addToDock(Qt::DockWidgetArea area, QDockWidget widget)* - přidá widget do dokovací oblasti

    • toolBar() - lišta nástrojů aplikace (ToolBar)

    • appTree() - seznam aplikací (FkTreeWidget)

    • tabs() - aktivní terminály (ConnectionTabs)

  • pluginMgr() - správce pluginů (PluginMgr)

  • jobScheduler() - plánovač úloh na pozadí (JobScheduler)

    • updateDetails() - obnoví informace o stavu úloh

    • remove(Job job)* - odstraní úlohu z plánovače

    • append(Job job)* - přidá novou úlohu do plánovače

  • scriptEngine() - interpret skriptu (ScriptEngine)

    • registerClass(const QMetaObject obj)* - registruje třídu do skriptovacího jádra

    • registerObject(const QString& name, QObject obj)* - přidá objekt do skriptovacího jádra jako globální

    • unload(Script script)* - ukončí skript

    • eval(const QString& script) - vyhodnotí skript

    • load(const QString& file, const QString& module = QString()) - nahraje soubor se skriptem (Script)

  • tray() - ikona systémové lišty (TrayIcon)

    • showMessage(const QString& title, const QString& msg, int timeout) - zobrazí zprávu jako upozornění v systémové liště

    • setToolTip(const QString& msg) - nastaví zprávu jako nápovědu ikony v systémové liště

3. Závěr

Vytvořili jsme si velmi jednoduchý plugin, který komunikuje se zařízením FITkit i grafickým rozhraním QDevKit.

Možnosti rozšíření jsou téměr neomezené, bohužel celé dostupné API není dokumentováno. Obecně platí, že C++ verze má více možností, především kompletní podporu knihovny Qt .

Zobrazeno: 2020x Naposledy: 1.10.2023 08:59:49