Donner SVG main
0.8.0 ยท 382bd0190.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
EditorMenuModel.h File Reference
#include <span>
#include <string_view>
#include "donner/editor/MenuBarPresenter.h"
Include dependency graph for EditorMenuModel.h:

Classes

struct  donner::editor::EditorMenuNode
 One item in the shared native/ImGui menu declaration. More...
struct  donner::editor::EditorMenu
 One top-level menu in display order. More...
struct  donner::editor::EditorMenuItemPresentation
 Enabled and checked state computed once for both menu backends. More...

Namespaces

namespace  donner
 Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css.

Enumerations

enum class  donner::editor::EditorMenuSurface {
  ImGui ,
  Native
}
 Menu backend; native editing capture disables unsafe canvas actions.

Functions

std::span< const EditorMenu > donner::editor::EditorMenuModel ()
 The complete ordered menu tree, including labels, shortcuts, and commands.
bool donner::editor::SuppressNativeMenuShortcuts (const MenuBarState &state)
 Whether native key equivalents must yield to a focused text editor.
EditorMenuItemPresentation donner::editor::PresentEditorMenuItem (const EditorMenuNode &item, const MenuBarState &state, EditorMenuSurface surface=EditorMenuSurface::ImGui)
 Resolve an item's live enabled and checked state from the shell's menu state.
bool donner::editor::NativeMenuActivationAllowed (const EditorMenuNode &item, const MenuBarState &state, bool keyEquivalent)
 Gate a queued AppKit activation against current focus and item state.