porymap/include/ui/wildmonsearch.h
GriffinR 0582745103
Some checks are pending
Build Porymap / build-linux (, 5.14.2) (push) Waiting to run
Build Porymap / build-linux (, 6.8.*) (push) Waiting to run
Build Porymap / build-linux (minimal, 5.14.2) (push) Waiting to run
Build Porymap / build-macos (macos-15-intel) (push) Waiting to run
Build Porymap / build-macos (macos-latest) (push) Waiting to run
Build Porymap / build-static-windows (push) Waiting to run
Replace some QDialogs with window widgets
2026-03-01 17:29:35 -05:00

50 lines
1.0 KiB
C++

#ifndef WILDMONSEARCH_H
#define WILDMONSEARCH_H
#include <QWidget>
#include "numericsorttableitem.h"
class Project;
namespace Ui {
class WildMonSearch;
}
class WildMonSearch : public QWidget
{
Q_OBJECT
public:
explicit WildMonSearch(Project *project, QWidget *parent = nullptr);
~WildMonSearch();
void refresh();
signals:
void openWildMonTableRequested(const QString &mapName, const QString &groupName, const QString &fieldName);
private:
struct RowData {
QString mapName;
QString groupName;
QString fieldName;
QString levelRange;
QString chance;
};
Ui::WildMonSearch *ui;
Project *const project;
QMap<QString,QMap<int,QString>> percentageStrings;
QMap<QString,QList<RowData>> resultsCache;
void addTableEntry(const RowData &rowData);
QList<RowData> search(const QString &species) const;
void updatePercentageStrings();
void updateResults(const QString &species);
void cellDoubleClicked(int row, int column);
};
#endif // WILDMONSEARCH_H