107 lines
3.3 KiB
C++
107 lines
3.3 KiB
C++
#pragma once
|
|
|
|
#include <QTranslator>
|
|
#include "base/HGEvent.h"
|
|
#include "dialog_device_select.h"
|
|
#include "hg_settingdialog.h"
|
|
#include "dialog_progress_ui.h"
|
|
#include "dialog_twain_source_select.h"
|
|
#include "dialog_source_select.h"
|
|
#include "dialog_abnormal_img_select.h"
|
|
|
|
class Manager : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
Manager();
|
|
~Manager();
|
|
|
|
int showDeviceSelect(const std::vector<DEVQUEUI>& devs);
|
|
int showSettingUi(SANE_Handle device, HWND settingUiParent, LPSANEAPI api, const char * devName, gb::scanner_cfg* cfg, bool with_scan, std::function<void(ui_result)> callback, std::function<void(int, void*, int)>* notify);
|
|
int showProgressUi(HWND parent, std::function<void (ui_result)> callback, std::function<void (int, void *, int)> *notify);
|
|
int showMessageBoxUi(HWND parent, int event, void *msg, int flag);
|
|
int showTwainSrcUi(const TW_IDENTITY *vds, HGUInt count, const char* defDevName, HGWindow parent, TW_IDENTITY *ds);
|
|
int showSaneSrcUi(const char **manuNames, const char **sanePaths, HGWindow parent, HGDll *dll,
|
|
SANEAPI* saneApi, char *manuName, unsigned int maxLen);
|
|
int showAbnormalImgUi(SANE_Image *img);
|
|
|
|
void closeSettingUi();
|
|
void closeProgressUi();
|
|
void closeMessageBoxUi();
|
|
|
|
void clear_functions(void);
|
|
|
|
private:
|
|
void msgLoop(void *hEvent);
|
|
|
|
signals:
|
|
void init();
|
|
void createDeviceSelect(void *hEvent);
|
|
void createSettingUi(void *hEvent);
|
|
void createProgressUi(void *hEvent);
|
|
void createMessageBoxUi(void *hEvent);
|
|
void createTwainSrcUi(void *hEvent);
|
|
void createSaneSrcUi(void *hEvent);
|
|
void createAbnormalImgUi(void *hEvent, HGImage image);
|
|
|
|
void deleteSettingUi(void *hEvent);
|
|
void deleteProgressUi(void *hEvent);
|
|
void deleteMessageBoxUi(void *hEvent);
|
|
|
|
private slots:
|
|
void on_init();
|
|
void on_createDeviceSelect(void *hEvent);
|
|
void on_createSettingUi(void *hEvent);
|
|
void on_createProgressUi(void *hEvent);
|
|
void on_createMessageBoxUi(void *hEvent);
|
|
void on_createTwainSrcUi(void *hEvent);
|
|
void on_createSaneSrcUi(void *hEvent);
|
|
void on_createAbnormalImgUi(void *hEvent, HGImage image);
|
|
|
|
void on_deleteSettingUi(void *hEvent);
|
|
void on_deleteProgressUi(void *hEvent);
|
|
void on_deleteMessageBoxUi(void *hEvent);
|
|
|
|
public:
|
|
QTranslator m_translator;
|
|
QTranslator m_translator_qt;
|
|
int m_langCode;
|
|
|
|
std::vector<DEVQUEUI> m_DeviceSelectDevs;
|
|
int m_DeviceSelectResult;
|
|
|
|
hg_settingdialog *m_settingUi;
|
|
SANE_Handle m_device;
|
|
HGWindow m_settingUiParent;
|
|
SANEAPI m_api;
|
|
std::string m_devName;
|
|
bool m_with_scan;
|
|
gb::scanner_cfg* scanner_cfg_;
|
|
std::function<void(ui_result)> m_settingUiCallback;
|
|
std::function<void(int, void*, int)>* m_settingNotify;
|
|
|
|
Dialog_progress_ui *m_progressUi;
|
|
HGWindow m_progressUiparent;
|
|
std::function<void (ui_result)> m_progressUiCallback;
|
|
std::function<void (int, void *, int)> * m_progNotify;
|
|
|
|
HGWindow m_messageBoxUiParent;
|
|
int m_notifyEvent;
|
|
std::string m_message;
|
|
int m_flag;
|
|
|
|
std::vector<TW_IDENTITY> m_vds;
|
|
std::string m_defDsName;
|
|
HGWindow m_TwainSrcUiparent;
|
|
TW_IDENTITY m_ds;
|
|
|
|
std::vector<std::pair<std::string, std::string> > m_saneSource;
|
|
HGWindow m_SaneSrcUiparent;
|
|
HGDll m_saneDll;
|
|
SANEAPI m_saneApi;
|
|
std::string m_saneManuName;
|
|
|
|
int m_abnormalImgResult;
|
|
};
|