AEEditorStrings.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. // Copyright (c) 2014-2015, THUNDERBEAST GAMES LLC All rights reserved
  2. // Please see LICENSE.md in repository root for license information
  3. // https://github.com/AtomicGameEngine/AtomicGameEngine
  4. #pragma once
  5. #include <Atomic/Core/Object.h>
  6. #include <Atomic/IO/FileSystem.h>
  7. using namespace Atomic;
  8. #define EDITOR_STRING(x) (GetSubsystem<EditorStrings>()->Str(EditorStrings::x))
  9. namespace AtomicEditor
  10. {
  11. class EditorStrings : public Object
  12. {
  13. OBJECT(EditorStrings);
  14. public:
  15. enum EditorString
  16. {
  17. RevealInFinder,
  18. ShortcutUndo,
  19. ShortcutRedo,
  20. ShortcutCut,
  21. ShortcutCopy,
  22. ShortcutPaste,
  23. ShortcutSelectAll,
  24. ShortcutFind,
  25. ShortcutFindNext,
  26. ShortcutFindPrev,
  27. ShortcutBeautify,
  28. ShortcutCloseFile,
  29. ShortcutSaveFile,
  30. ShortcutPlay,
  31. ShortcutBuild,
  32. ShortcutBuildSettings,
  33. };
  34. /// Construct.
  35. EditorStrings(Context* context);
  36. /// Destruct.
  37. ~EditorStrings();
  38. const String& Str(EditorString estring);
  39. private:
  40. void InitializeStrings();
  41. void HandleEditorShutdown(StringHash eventType, VariantMap& eventData);
  42. HashMap<unsigned, String> stringLookup_;
  43. };
  44. }