#ifndef MODETHREAD_H #define MODETHREAD_H #include #include "wl_numlock.h" class ModeThread : public QThread { Q_OBJECT public: ModeThread(){} ~ModeThread(){ delete key_manager; } void setMode(int m){ mode = m; } private: int mode = 0; // 0 - on/off, 1 - on, 2 - off WLKeyManager * key_manager = new WLKeyManager(); protected: void run() override{ forever{ if (mode == 0) return; msleep(50); if ((mode == 1 && !key_manager->getNumLockState()) || (mode == 2 && key_manager->getNumLockState())) key_manager->pressNumLock(); } } }; #endif // MODETHREAD_H