#ifndef DIALOG_SCAN_H #define DIALOG_SCAN_H #include #include #include "sane/sane_ex.h" #include "sane/sane_option_definitions.h" namespace Ui { class Dialog_Scan; } class Dialog_Scan : public QDialog { Q_OBJECT friend class MainWindow; public: explicit Dialog_Scan(class MainWindow *mainWnd); ~Dialog_Scan(); private: static int sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param); protected: virtual void closeEvent(QCloseEvent *e) override; signals: void deviceArrive(QString devName); void deviceRemove(QString devName); private slots: void on_deviceArrive(QString devName); void on_deviceRemove(QString devName); void on_comboBox_currentIndexChanged(const QString &arg1); private: Ui::Dialog_Scan *ui; class MainWindow *m_mainWnd; QString m_devName; SANE_Handle m_devHandle; }; #endif // DIALOG_SCAN_H