summaryrefslogtreecommitdiff
path: root/ui/textdialog.h
blob: 74df631584d8a31cf1a8c08a26307e63b5895dca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#pragma once

#include <QtWidgets/QDialog>
#include <QtWidgets/QComboBox>
#include <QtWidgets/QLabel>

#include "binaryninjaapi.h"
#include "uitypes.h"
#include "binaryninjaapi.h"

/*!

	\defgroup textdialog TextDialog
 	\ingroup uiapi
*/

/*!

    \ingroup textdialog
*/
class BINARYNINJAUIAPI TextDialog : public QDialog
{
	Q_OBJECT
	QString m_qSettingsListName;
	int m_historySize;
	QString m_historyEntry;
	QString m_initialText;
	QStringList m_historyEntries;
	QLabel* m_messageText;
	QComboBox* m_combo;

  public:
	TextDialog(QWidget* parent, const QString& title, const QString& msg, const QString& qSettingsListName,
	    const std::string& initialText = "");
	TextDialog(QWidget* parent, const QString& title, const QString& msg, const QString& qSettingsListName,
	    const QString& initialText);
	QString getItem();
	void setInitialText(const std::string& initialText) { m_initialText = QString::fromStdString(initialText); }
	void commitHistory();
};