#pragma once

#include <QString>

#include "entry.h"

namespace Dtk {
namespace Util {

class Entry;
class SearchData;
class Search
{
public:
    Search();

    void addEntry(const QString& value, void*data);
    void removeEntry(Entry *entry);

    QList<Entry*> findEntry(const QString& findKey);
    QList<void*> findEntryData(const QString& findKey);
    QList<QString> findEntryValue(const QString& findKey);

private:
    SearchData *d = Q_NULLPTR;
};

}}
