#ifndef KEYMAPPER_H
#define KEYMAPPER_H

#include "scene/scenenode.h"
#include "SparrowInput/keybindings.h"
#include <map>
#include <set>

class KeyMapper : public SceneNode
{
    bool m_enabled;
    int m_selected_context;
    IKeysMap m_keysmap;
    std::string m_keymap_file;

    std::map<int,std::string> m_mouse_buttons;
    std::map<int,std::string> m_keyboard_keys;
    std::map<int,std::string> m_actions_list;
    int m_waiting_for_input;

    void gui();
public:
    KeyMapper();
    void update();
    void toggle();
};

#endif // KEYMAPPER_H
