#pragma once

#include "classicmocknote.h"

#include <memory>
#include <vector>

class SelectionManager
{
public:
    explicit SelectionManager();

    // Remove whole selection completely
    void discard();

    void fetch(ClassicMockNote * const note);
    void remove(ClassicMockNote * const note);

    void enableMultiselection(bool enable = true);
    bool isMultiselectionEnabled() const;

    void display() const;

private:
    std::vector<ClassicMockNote*> _selected_notes;
    bool _multiselection_enabled;
};
