1#ifndef YAZE_APP_EDITOR_SYSTEM_SHORTCUT_MANAGER_H
2#define YAZE_APP_EDITOR_SYSTEM_SHORTCUT_MANAGER_H
6#include <unordered_map>
8#include "imgui/imgui.h"
15 std::vector<ImGuiKey>
keys;
19std::vector<ImGuiKey>
ParseShortcut(
const std::string &shortcut);
26 const std::vector<ImGuiKey> &keys) {
30 const std::vector<ImGuiKey> &keys,
31 std::function<
void()> callback) {
36 std::function<
void()> callback) {
50 std::function<void()>
GetCallback(
const std::string &name)
const {
54 const std::string
GetKeys(
const std::string &name)
const {
const Shortcut & GetShortcut(const std::string &name) const
const std::string GetKeys(const std::string &name) const
void RegisterShortcut(const std::string &name, ImGuiKey key, std::function< void()> callback)
std::function< void()> GetCallback(const std::string &name) const
auto GetShortcuts() const
void RegisterShortcut(const std::string &name, const std::vector< ImGuiKey > &keys, std::function< void()> callback)
void ExecuteShortcut(const std::string &name) const
std::unordered_map< std::string, Shortcut > shortcuts_
void RegisterShortcut(const std::string &name, const std::vector< ImGuiKey > &keys)
Editors are the view controllers for the application.
std::vector< ImGuiKey > ParseShortcut(const std::string &shortcut)
std::string PrintShortcut(const std::vector< ImGuiKey > &keys)
void ExecuteShortcuts(const ShortcutManager &shortcut_manager)
Main namespace for the application.
std::function< void()> callback
std::vector< ImGuiKey > keys