// bigintmandelwidget.h #ifndef BIGINTMANDELWIDGET_H #define BIGINTMANDELWIDGET_H #include #include #include #include #include #include #include "mandel.h" #include "settingswidget.h" class MenuBar; class BigintMandelWidget : public QWidget { Q_OBJECT QFutureWatcher *fw; MandelSettings settings; MenuBar *menu_bar; QScrollArea *scroll_area; QLabel *img_label; bool img_dirty; QStatusBar *status_bar; SettingsWidget *settings_widget; int draw_progress; inline const QSize get_ideal_size() const { return scroll_area->size().shrunkBy(scroll_area->contentsMargins()); } public: BigintMandelWidget(QWidget *parent = nullptr); ~BigintMandelWidget(); void paintEvent(QPaintEvent *event); void mousePressEvent(QMouseEvent *event); void update_img(); public Q_SLOTS: void reset(); void export_img(); void exec_settings_widget(); void settings_widget_accepted(); void finished_cell(int num); void finished(); void load_data(); void save_data(); }; #endif // BIGINTMANDELWIDGET_H