#pragma once #include #include "base/HGEvent.h" #include "dialog_device_select.h" #include "hg_settingdialog.h" #include "dialog_progress_ui.h" class Manager : public QObject { Q_OBJECT public: Manager(); ~Manager(); int showDeviceSelect(const std::vector& devs); int showSettingUi(SANE_Handle device, HWND settingUiParent, LPSANEAPI api, const char *devName, bool with_scan, std::function callback); int showProgressUi(HWND parent, std::function callback, std::function *notify); int showMessageBoxUi(HWND parent, int event, void *msg, int flag); signals: void init(); void createDeviceSelect(); void createSettingUi(); void createProgressUi(); void createMessageBoxUi(); private slots: void on_init(); void on_createDeviceSelect(); void on_createSettingUi(); void on_createProgressUi(); void on_createMessageBoxUi(); private: QTranslator m_translator; QTranslator m_translator_qt; int m_langCode; HGEvent m_event; std::vector m_DeviceSelectDevs; unsigned long m_DeviceSelectThreadId; int m_DeviceSelectResult; unsigned long m_SettingUiThreadId; SANE_Handle m_device; HWND m_settingUiParent; SANEAPI m_api; std::string m_devName; bool m_with_scan; std::function m_settingUiCallback; HWND m_progressUiparent; unsigned long m_ProgressUiThreadId; std::function m_progressUiCallback; std::function *m_notify; unsigned long m_MessageBoxUiThreadId; HWND m_messageBoxUiParent; int m_notifyEvent; std::string m_message; int m_flag; };