28 #ifndef dooble_downloads_h
29 #define dooble_downloads_h
31 #include <QMainWindow>
33 #include <QSqlDatabase>
36 #include "ui_dooble_downloads.h"
38 class QWebEngineDownloadItem;
39 class QWebEngineProfile;
47 QString download_path(
void)
const;
48 bool contains(QWebEngineDownloadItem *download)
const;
49 bool is_finished(
void)
const;
50 bool is_private(
void)
const;
52 static void create_tables(QSqlDatabase &db);
56 void record_download(QWebEngineDownloadItem *download);
60 void showNormal(
void);
63 void closeEvent(QCloseEvent *event);
64 void keyPressEvent(QKeyEvent *event);
65 void resizeEvent(QResizeEvent *event);
68 QHash<QObject *, char> m_downloads;
69 QPointer<QWebEngineProfile> m_web_engine_profile;
70 QTimer m_download_path_inspection_timer;
71 QTimer m_search_timer;
72 Ui_dooble_downloads m_ui;
73 void delete_selected(
void);
74 void remove_entry(qintptr oid);
75 void save_settings(
void);
78 void slot_clear_finished_downloads(
void);
79 void slot_copy_download_location(
void);
80 void slot_delete_row(
void);
81 void slot_download_destroyed(
void);
82 void slot_download_finished(
void);
83 void slot_download_path_inspection_timer_timeout(
void);
84 void slot_download_requested(QWebEngineDownloadItem *download);
86 void slot_open_download_page(
void);
87 void slot_populate(
void);
88 void slot_reload(
const QString &file_name,
const QUrl &url);
89 void slot_search_timer_timeout(
void);
90 void slot_select_path(
void);
91 void slot_show_context_menu(
const QPoint &point);
95 void open_link(
const QUrl &url);