summaryrefslogtreecommitdiff
path: root/plugins/warp/ui/shared/selectprojectfilesdialog.h
blob: ce5e8093ab6438c5495287492aa1718a15ad94f4 (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
#pragma once

#include <QComboBox>
#include <QDialog>
#include <QListWidget>

#include "binaryninjaapi.h"

class SelectProjectFilesDialog : public QDialog
{
	Q_OBJECT
	BinaryNinja::Ref<BinaryNinja::Project> m_currentProject;
	QComboBox* m_projectCombo;
	QLineEdit* m_searchBar;
	QListWidget* m_notAddingList;
	QListWidget* m_addingList;

public:
	SelectProjectFilesDialog(QWidget* parent = nullptr);

	void updateFileList();
	void filterLists();
	void moveSelected(QListWidget* from, QListWidget* to);
	[[nodiscard]] std::vector<BinaryNinja::Ref<BinaryNinja::ProjectFile>> getSelectedFiles() const;
	[[nodiscard]] BinaryNinja::Ref<BinaryNinja::Project> getSelectedProject() const;
};