# HG changeset patch # User Rubidium # Date 2023-05-18 09:02:36 # Node ID 588375abeca326457ff62de375a73021784ee950 # Parent 53658248e31b723cbce64dd71e029ca85f575162 Codechange: replace std::vector + duplicate preventing include with std::set diff --git a/src/hotkeys.cpp b/src/hotkeys.cpp --- a/src/hotkeys.cpp +++ b/src/hotkeys.cpp @@ -213,9 +213,9 @@ static std::string KeycodeToString(uint1 std::string SaveKeycodes(const Hotkey *hotkey) { std::string str; - for (uint i = 0; i < hotkey->keycodes.size(); i++) { - if (i > 0) str += ","; - str += KeycodeToString(hotkey->keycodes[i]); + for (auto keycode : hotkey->keycodes) { + if (!str.empty()) str += ","; + str += KeycodeToString(keycode); } return str; } @@ -257,7 +257,7 @@ Hotkey::Hotkey(const uint16 *default_key */ void Hotkey::AddKeycode(uint16 keycode) { - include(this->keycodes, keycode); + this->keycodes.insert(keycode); } HotkeyList::HotkeyList(const char *ini_group, Hotkey *items, GlobalHotkeyHandlerFunc global_hotkey_handler) : diff --git a/src/hotkeys.h b/src/hotkeys.h --- a/src/hotkeys.h +++ b/src/hotkeys.h @@ -10,7 +10,6 @@ #ifndef HOTKEYS_H #define HOTKEYS_H -#include "core/smallvec_type.hpp" #include "gfx_type.h" #include "window_type.h" #include "string_type.h" @@ -27,7 +26,7 @@ struct Hotkey { const char *name; int num; - std::vector keycodes; + std::set keycodes; }; #define HOTKEY_LIST_END Hotkey((uint16)0, nullptr, -1)