cutter/src/dialogs/OptionsDialog.h

75 lines
1.6 KiB
C
Raw Normal View History

#ifndef OPTIONSDIALOG_H
#define OPTIONSDIALOG_H
#include <QDialog>
#include <QStringList>
#include <QTimer>
#include <QElapsedTimer>
2017-10-02 09:41:28 +00:00
#include <memory>
2018-03-04 17:42:02 +00:00
#include "Cutter.h"
#include "AnalThread.h"
#include "ui_OptionsDialog.h"
class MainWindow;
class OptionsDialog : public QDialog
{
Q_OBJECT
public:
explicit OptionsDialog(MainWindow *main);
~OptionsDialog();
RAnalFunction functionAt(ut64 addr);
QStringList asm_plugins;
void setupAndStartAnalysis(int level, QList<QString> advanced);
public slots:
void updateProgress(const QString &str);
private slots:
void on_okButton_clicked();
void on_analSlider_valueChanged(int value);
void on_AdvOptButton_clicked();
void on_analCheckBox_clicked(bool checked);
void on_archComboBox_currentIndexChanged(int index);
void on_pdbSelectButton_clicked();
void updateProgressTimer();
void updatePDBLayout();
void anal_finished();
protected:
void closeEvent(QCloseEvent *event) override;
private:
AnalThread analThread;
MainWindow *main;
2017-10-09 18:08:35 +00:00
CutterCore *core;
int defaultAnalLevel;
2017-04-01 11:20:13 +00:00
QString analysisDescription(int level);
void updateCPUComboBox();
void setInteractionEnabled(bool enabled);
public:
enum class Endianness { Auto, Little, Big };
2018-01-20 10:35:31 +00:00
2017-10-02 09:41:28 +00:00
std::unique_ptr<Ui::OptionsDialog> ui;
2018-01-20 10:35:31 +00:00
QString getSelectedArch();
QString getSelectedCPU();
int getSelectedBits();
int getSelectedBBSize();
2018-01-20 10:35:31 +00:00
Endianness getSelectedEndianness();
QString getSelectedOS();
QTimer analTimer;
QElapsedTimer analElapsedTimer;
2017-12-06 12:32:35 +00:00
void reject() override;
};
#endif // OPTIONSDIALOG_H