yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::editor Namespace Reference

Editors are the view controllers for the application. More...

Namespaces

namespace  AgentUI
 
namespace  anonymous_namespace{agent_chat_history_codec.cc}
 
namespace  anonymous_namespace{agent_collaboration_coordinator.cc}
 
namespace  anonymous_namespace{assembly_editor.cc}
 
namespace  anonymous_namespace{editor_manager.cc}
 
namespace  anonymous_namespace{gfx_group_editor.cc}
 
namespace  anonymous_namespace{message_editor.cc}
 
namespace  anonymous_namespace{overworld_editor.cc}
 
namespace  anonymous_namespace{overworld_entity_renderer.cc}
 
namespace  anonymous_namespace{palette_editor.cc}
 
namespace  anonymous_namespace{shortcut_configurator.cc}
 
namespace  anonymous_namespace{shortcut_manager.cc}
 
namespace  anonymous_namespace{welcome_screen.cc}
 
namespace  palette_internal
 
namespace  palette_utility
 Utility functions for palette operations across editors.
 
namespace  PopupID
 
namespace  test
 
namespace  zsprite
 Namespace for the ZSprite format from Zarby's ZSpriteMaker.
 

Classes

class  AgentChatHistoryCodec
 
class  AgentChatHistoryPopup
 ImGui popup drawer for displaying chat history on the left side. More...
 
class  AgentChatWidget
 Modern AI chat widget with comprehensive z3ed and yaze-server integration. More...
 
class  AgentCollaborationCoordinator
 
class  AgentEditor
 Comprehensive AI Agent Platform & Bot Creator. More...
 
struct  AgentUITheme
 Centralized theme colors for Agent UI components. More...
 
class  AssemblyEditor
 Text editor for modifying assembly code. More...
 
struct  CardInfo
 Metadata for an editor card. More...
 
struct  ColorChange
 Represents a single color change for undo/redo. More...
 
struct  CommandEntry
 
class  CommandManager
 
class  CommandPalette
 
struct  DictionaryEntry
 
class  DungeonCanvasViewer
 Handles the main dungeon canvas rendering and interaction. More...
 
class  DungeonEditorV2
 DungeonEditorV2 - Simplified dungeon editor using component delegation. More...
 
class  DungeonMainPaletteCard
 Dungeon Main palette group card. More...
 
class  DungeonObjectInteraction
 Handles object selection, placement, and interaction within the dungeon canvas. More...
 
class  DungeonObjectSelector
 Handles object selection, preview, and editing UI. More...
 
class  DungeonRoomLoader
 Manages loading and saving of dungeon room data. More...
 
class  DungeonRoomSelector
 Handles room and entrance selection UI. More...
 
class  DungeonToolset
 Handles the dungeon editor toolset UI. More...
 
class  DungeonUsageTracker
 Tracks and analyzes usage statistics for dungeon resources. More...
 
class  Editor
 Interface for editor classes. More...
 
class  EditorCardRegistry
 Central registry for all editor cards with session awareness and dependency injection. More...
 
struct  EditorDependencies
 Unified dependency container for all editor types. More...
 
struct  EditorInfo
 Metadata about an available editor. More...
 
class  EditorManager
 The EditorManager controls the main editor window and manages the various editor classes. More...
 
class  EditorRegistry
 Manages editor types, categories, and lifecycle. More...
 
class  EditorSelectionDialog
 Beautiful grid-based editor selection dialog. More...
 
class  EditorSet
 Contains a complete set of editors for a single ROM instance. More...
 
class  EquipmentPaletteCard
 Equipment/Armor palette group card. More...
 
struct  ExampleAppPropertyEditor
 
struct  ExampleMemberInfo
 
struct  ExampleTreeNode
 
class  ExtensionManager
 
struct  FolderItem
 
class  GfxGroupEditor
 Manage graphics group configurations in a Rom. More...
 
class  GraphicsEditor
 Allows the user to edit graphics sheets from the game or view prototype graphics. More...
 
class  HistoryManager
 
class  LayoutManager
 Manages ImGui DockBuilder layouts for each editor type. More...
 
class  MapPropertiesSystem
 
struct  MemoryEditorWithDiffChecker
 
class  MenuBuilder
 Fluent interface for building ImGui menus with icons. More...
 
class  MenuOrchestrator
 Handles all menu building and UI coordination logic. More...
 
struct  MessageData
 
class  MessageEditor
 
struct  MessagePreview
 
class  MusicEditor
 A class for editing music data in a Rom. More...
 
class  ObjectEditorCard
 Unified card combining object selection, emulator preview, and canvas interaction. More...
 
class  OverworldAnimatedPaletteCard
 Overworld Animated palette group card. More...
 
class  OverworldEditor
 Manipulates the Overworld and OverworldMap data in a Rom. More...
 
class  OverworldEntityRenderer
 Handles visualization of all overworld entities (entrances, exits, items, sprites) More...
 
class  OverworldMainPaletteCard
 Overworld Main palette group card. More...
 
class  PaletteEditor
 Allows the user to view and edit in game palettes. More...
 
class  PaletteGroupCard
 Base class for palette group editing cards. More...
 
struct  PaletteGroupMetadata
 Metadata for an entire palette group. More...
 
struct  PaletteMetadata
 Metadata for a single palette in a group. More...
 
struct  ParsedElement
 
struct  PopupDefinition
 Complete definition of a popup including metadata. More...
 
class  PopupManager
 
struct  PopupParams
 Runtime state for a registered popup. More...
 
class  ProjectFileEditor
 Editor for .yaze project files with syntax highlighting and validation. More...
 
class  ProjectManager
 Handles all project file operations. More...
 
class  ProposalDrawer
 ImGui drawer for displaying and managing agent proposals. More...
 
struct  RecentProject
 Information about a recently used project. More...
 
class  RomFileManager
 Handles all ROM file I/O operations. More...
 
struct  RomSession
 Represents a single session, containing a ROM and its associated editors. More...
 
class  ScreenEditor
 The ScreenEditor class allows the user to edit a variety of screens in the game or create a custom menu. More...
 
class  SessionCoordinator
 High-level orchestrator for multi-session UI. More...
 
class  SettingsEditor
 
struct  Shortcut
 
struct  ShortcutDependencies
 
class  ShortcutManager
 
class  SpriteEditor
 Allows the user to edit sprites. More...
 
struct  SpriteItem
 
class  SpritePaletteCard
 Global Sprite palette group card. More...
 
class  SpritesAux1PaletteCard
 Sprites Aux1 palette group card. More...
 
class  SpritesAux2PaletteCard
 Sprites Aux2 palette group card. More...
 
class  SpritesAux3PaletteCard
 Sprites Aux3 palette group card. More...
 
struct  TextElement
 
class  Tile16Editor
 Popup window to edit Tile16 data. More...
 
struct  Toast
 
class  ToastManager
 
class  UICoordinator
 Handles all UI drawing operations and state management. More...
 
class  UserSettings
 Manages user preferences and settings persistence. More...
 
class  WelcomeScreen
 Modern welcome screen with project grid and quick actions. More...
 
class  WindowDelegate
 Low-level window operations with minimal dependencies. More...
 
class  WorkspaceManager
 Manages workspace layouts, sessions, and presets. More...
 

Enumerations

enum class  EditorType {
  kUnknown , kAssembly , kDungeon , kEmulator ,
  kGraphics , kMusic , kOverworld , kPalette ,
  kScreen , kSprite , kMessage , kHex ,
  kAgent , kSettings
}
 
enum  SpriteItemColumnID { SpriteItemColumnID_ID , SpriteItemColumnID_Name , SpriteItemColumnID_Description }
 Column IDs for the sprite table. More...
 
enum class  PopupType {
  kInfo , kHelp , kSettings , kFileOperation ,
  kConfirmation , kWarning , kEditor
}
 Type classification for popups to enable future filtering and organization. More...
 
enum class  ToastType { kInfo , kSuccess , kWarning , kError }
 

Functions

std::string GetRomStatusMessage (const Rom *rom)
 
bool IsRomReadyForEditing (const Rom *rom)
 
uint8_t FindMatchingCharacter (char value)
 
int8_t FindDictionaryEntry (uint8_t value)
 
std::optional< TextElementFindMatchingCommand (uint8_t b)
 
std::optional< TextElementFindMatchingSpecial (uint8_t value)
 
ParsedElement FindMatchingElement (const std::string &str)
 
std::string ParseTextDataByte (uint8_t value)
 
std::vector< uint8_t > ParseMessageToData (std::string str)
 
std::vector< DictionaryEntryBuildDictionaryEntries (Rom *rom)
 
std::string ReplaceAllDictionaryWords (std::string str, const std::vector< DictionaryEntry > &dictionary)
 
DictionaryEntry FindRealDictionaryEntry (uint8_t value, const std::vector< DictionaryEntry > &dictionary)
 
absl::StatusOr< MessageDataParseSingleMessage (const std::vector< uint8_t > &rom_data, int *current_pos)
 
std::vector< std::string > ParseMessageData (std::vector< MessageData > &message_data, const std::vector< DictionaryEntry > &dictionary_entries)
 
std::vector< MessageDataReadAllTextData (uint8_t *rom, int pos)
 
absl::Status LoadExpandedMessages (std::string &expanded_message_path, std::vector< std::string > &parsed_messages, std::vector< MessageData > &expanded_messages, std::vector< DictionaryEntry > &dictionary)
 
bool IsMouseHoveringOverEntity (const zelda3::GameEntity &entity, ImVec2 canvas_p0, ImVec2 scrolling)
 
void MoveEntityOnGrid (zelda3::GameEntity *entity, ImVec2 canvas_p0, ImVec2 scrolling, bool free_movement)
 
bool DrawEntranceInserterPopup ()
 
bool DrawOverworldEntrancePopup (zelda3::OverworldEntrance &entrance)
 
void DrawExitInserterPopup ()
 
bool DrawExitEditorPopup (zelda3::OverworldExit &exit)
 
void DrawItemInsertPopup ()
 
bool DrawItemEditorPopup (zelda3::OverworldItem &item)
 
void DrawSpriteTable (std::function< void(int)> onSpriteSelect)
 
void DrawSpriteInserterPopup ()
 
bool DrawSpriteEditorPopup (zelda3::Sprite &sprite)
 
absl::StatusOr< zelda3::OverworldEntrance * > InsertEntrance (zelda3::Overworld *overworld, ImVec2 mouse_pos, int current_map, bool is_hole=false)
 Flat helper functions for entity insertion/manipulation.
 
absl::StatusOr< zelda3::OverworldExit * > InsertExit (zelda3::Overworld *overworld, ImVec2 mouse_pos, int current_map)
 Insert a new exit at the specified position.
 
absl::StatusOr< zelda3::Sprite * > InsertSprite (zelda3::Overworld *overworld, ImVec2 mouse_pos, int current_map, int game_state, uint8_t sprite_id=0)
 Insert a new sprite at the specified position.
 
absl::StatusOr< zelda3::OverworldItem * > InsertItem (zelda3::Overworld *overworld, ImVec2 mouse_pos, int current_map, uint8_t item_id=0)
 Insert a new item at the specified position.
 
uint8_t GetParentMapId (const zelda3::OverworldMap *map, int current_map)
 Helper to get parent map ID for multi-area maps.
 
ImVec2 SnapToEntityGrid (ImVec2 pos)
 Snap position to 16x16 grid (standard entity positioning)
 
ImVec2 ClampToOverworldBounds (ImVec2 pos)
 Clamp position to valid overworld bounds.
 
constexpr ImVec2 kOverworldCanvasSize (kOverworldMapSize *8, kOverworldMapSize *8)
 
constexpr ImVec2 kCurrentGfxCanvasSize (0x100+1, 0x10 *0x40+1)
 
constexpr ImVec2 kBlocksetCanvasSize (0x100+1, 0x4000+1)
 
constexpr ImVec2 kGraphicsBinCanvasSize (0x100+1, kNumSheetsToLoad *0x40+1)
 
absl::Status DisplayPalette (gfx::SnesPalette &palette, bool loaded)
 Display SNES palette with enhanced ROM hacking features.
 
void ConfigureEditorShortcuts (const ShortcutDependencies &deps, ShortcutManager *shortcut_manager)
 
void ConfigureMenuShortcuts (const ShortcutDependencies &deps, ShortcutManager *shortcut_manager)
 
std::string PrintShortcut (const std::vector< ImGuiKey > &keys)
 
std::vector< ImGuiKey > ParseShortcut (const std::string &shortcut)
 
void ExecuteShortcuts (const ShortcutManager &shortcut_manager)
 

Variables

constexpr std::array< const char *, 14 > kEditorNames
 
constexpr const char * kOverworldEditorName = ICON_MD_LAYERS " Overworld Editor"
 
constexpr const char * kGraphicsEditorName = ICON_MD_PHOTO " Graphics Editor"
 
constexpr const char * kPaletteEditorName = ICON_MD_PALETTE " Palette Editor"
 
constexpr const char * kScreenEditorName = ICON_MD_SCREENSHOT " Screen Editor"
 
constexpr const char * kSpriteEditorName = ICON_MD_SMART_TOY " Sprite Editor"
 
constexpr const char * kMessageEditorName = ICON_MD_MESSAGE " Message Editor"
 
constexpr const char * kSettingsEditorName = ICON_MD_SETTINGS " Settings Editor"
 
constexpr const char * kAssemblyEditorName = ICON_MD_CODE " Assembly Editor"
 
constexpr const char * kDungeonEditorName = ICON_MD_CASTLE " Dungeon Editor"
 
constexpr const char * kMusicEditorName = ICON_MD_MUSIC_NOTE " Music Editor"
 
constexpr ImGuiTableFlags kGfxEditTableFlags
 
const std::string kSuperDonkeyTiles []
 
const std::string kSuperDonkeySprites []
 
constexpr uint32_t kRedPen = 0xFF0000FF
 
const std::string kBankToken = "BANK"
 
const std::string DICTIONARYTOKEN = "D"
 
constexpr uint8_t kMessageTerminator = 0x7F
 
constexpr uint8_t DICTOFF = 0x88
 
constexpr uint8_t kWidthArraySize = 100
 
constexpr int kTextData = 0xE0000
 
constexpr int kTextDataEnd = 0xE7FFF
 
constexpr int kNumDictionaryEntries = 0x61
 
constexpr int kPointersDictionaries = 0x74703
 
constexpr uint8_t kScrollVertical = 0x73
 
constexpr uint8_t kLine1 = 0x74
 
constexpr uint8_t kLine2 = 0x75
 
constexpr uint8_t kLine3 = 0x76
 
const std::string CHEESE = "\uBEBE"
 
constexpr int kTextData2 = 0x75F40
 
constexpr int kTextData2End = 0x773FF
 
constexpr ImGuiTableFlags kMessageTableFlags
 
constexpr int kGfxFont = 0x70000
 
constexpr int kCharactersWidth = 0x74ADF
 
constexpr int kNumMessages = 396
 
constexpr int kFontGfxMessageSize = 128
 
constexpr int kFontGfxMessageDepth = 8
 
constexpr int kFontGfx16Size = 172 * 4096
 
constexpr uint8_t kBlockTerminator = 0x80
 
constexpr uint8_t kMessageBankChangeId = 0x80
 
constexpr int kCurrentMessageWidth = 172
 
constexpr int kCurrentMessageHeight = 4096
 
const ImGuiTableFlags toolset_table_flags_ = ImGuiTableFlags_SizingFixedFit
 
const ImGuiTableFlags music_editor_flags_
 
constexpr float kInputFieldSize = 30.f
 
constexpr unsigned int k4BPP = 4
 
constexpr unsigned int kByteSize = 3
 
constexpr unsigned int kMessageIdSize = 5
 
constexpr unsigned int kNumSheetsToLoad = 223
 
constexpr unsigned int kOverworldMapSize = 0x200
 
constexpr ImGuiTableFlags kOWMapFlags
 
constexpr absl::string_view kWorldList
 
constexpr absl::string_view kGamePartComboString = "Part 0\0Part 1\0Part 2\0"
 
constexpr absl::string_view kOWMapTable = "#MapSettingsTable"
 
constexpr int kTile16Size = 16
 
constexpr int kTile8Size = 8
 
constexpr int kTilesheetEditorWidth = 0x100
 
constexpr int kTilesheetEditorHeight = 0x4000
 
constexpr int kTile16CanvasSize = 0x20
 
constexpr int kTile8CanvasHeight = 0x175
 
constexpr int kNumScratchSlots = 4
 
constexpr int kNumPalettes = 8
 
constexpr int kTile8PixelCount = 64
 
constexpr int kTile16PixelCount = 256
 
constexpr const char * kGameStateNames []
 
constexpr const char * kWorldNames []
 
constexpr const char * kAreaSizeNames []
 
constexpr float kHexByteInputWidth = 50.f
 
constexpr float kHexWordInputWidth = 70.f
 
constexpr float kCompactButtonWidth = 60.f
 
constexpr float kIconButtonWidth = 30.f
 
constexpr float kSmallButtonWidth = 80.f
 
constexpr float kMediumButtonWidth = 90.f
 
constexpr float kLargeButtonWidth = 100.f
 
constexpr float kTableColumnWorld = 120.f
 
constexpr float kTableColumnMap = 80.f
 
constexpr float kTableColumnAreaSize = 120.f
 
constexpr float kTableColumnLock = 50.f
 
constexpr float kTableColumnGraphics = 80.f
 
constexpr float kTableColumnPalettes = 80.f
 
constexpr float kTableColumnProperties = 100.f
 
constexpr float kTableColumnTools = 80.f
 
constexpr float kTableColumnView = 80.f
 
constexpr float kTableColumnQuick = 80.f
 
constexpr float kComboWorldWidth = 115.f
 
constexpr float kComboAreaSizeWidth = 115.f
 
constexpr float kComboGameStateWidth = 100.f
 
constexpr float kTableButtonGraphics = 75.f
 
constexpr float kTableButtonPalettes = 75.f
 
constexpr float kTableButtonProperties = 95.f
 
constexpr float kTableButtonTools = 75.f
 
constexpr float kTableButtonView = 75.f
 
constexpr float kTableButtonQuick = 75.f
 
constexpr float kCompactItemSpacing = 4.f
 
constexpr float kCompactFramePadding = 2.f
 
constexpr ImGuiTableFlags kPaletteTableFlags
 
constexpr ImGuiColorEditFlags kPalNoAlpha = ImGuiColorEditFlags_NoAlpha
 
constexpr ImGuiColorEditFlags kPalButtonFlags
 
constexpr ImGuiColorEditFlags kColorPopupFlags
 
constexpr ImGuiTabItemFlags kSpriteTabFlags
 
constexpr ImGuiTabBarFlags kSpriteTabBarFlags
 
constexpr ImGuiTableFlags kSpriteTableFlags
 

Detailed Description

Editors are the view controllers for the application.

Enumeration Type Documentation

◆ EditorType

enum class yaze::editor::EditorType
strong
Enumerator
kUnknown 
kAssembly 
kDungeon 
kEmulator 
kGraphics 
kMusic 
kOverworld 
kPalette 
kScreen 
kSprite 
kMessage 
kHex 
kAgent 
kSettings 

Definition at line 93 of file editor.h.

◆ SpriteItemColumnID

Column IDs for the sprite table.

Enumerator
SpriteItemColumnID_ID 
SpriteItemColumnID_Name 
SpriteItemColumnID_Description 

Definition at line 36 of file entity.h.

◆ PopupType

enum class yaze::editor::PopupType
strong

Type classification for popups to enable future filtering and organization.

Enumerator
kInfo 
kHelp 
kSettings 
kFileOperation 
kConfirmation 
kWarning 
kEditor 

Definition at line 20 of file popup_manager.h.

◆ ToastType

enum class yaze::editor::ToastType
strong
Enumerator
kInfo 
kSuccess 
kWarning 
kError 

Definition at line 17 of file toast_manager.h.

Function Documentation

◆ GetRomStatusMessage()

std::string yaze::editor::GetRomStatusMessage ( const Rom rom)
inline

Definition at line 29 of file editor_safeguards.h.

References yaze::Rom::is_loaded(), and yaze::Rom::title().

Here is the call graph for this function:

◆ IsRomReadyForEditing()

bool yaze::editor::IsRomReadyForEditing ( const Rom rom)
inline

Definition at line 36 of file editor_safeguards.h.

References yaze::Rom::is_loaded(), and yaze::Rom::title().

Here is the call graph for this function:

◆ FindMatchingCharacter()

uint8_t yaze::editor::FindMatchingCharacter ( char  value)

◆ FindDictionaryEntry()

int8_t yaze::editor::FindDictionaryEntry ( uint8_t  value)

◆ FindMatchingCommand()

std::optional< TextElement > yaze::editor::FindMatchingCommand ( uint8_t  b)

◆ FindMatchingSpecial()

std::optional< TextElement > yaze::editor::FindMatchingSpecial ( uint8_t  value)

Definition at line 38 of file message_data.cc.

References yaze::editor::TextElement::ID.

Referenced by ParseMessageData(), ParseTextDataByte(), and ReadAllTextData().

◆ FindMatchingElement()

ParsedElement yaze::editor::FindMatchingElement ( const std::string &  str)

Definition at line 49 of file message_data.cc.

References DICTIONARYTOKEN, and DICTOFF.

Referenced by ParseMessageToData(), yaze::test::TEST_F(), and yaze::test::TEST_F().

◆ ParseTextDataByte()

std::string yaze::editor::ParseTextDataByte ( uint8_t  value)

◆ ParseMessageToData()

◆ BuildDictionaryEntries()

std::vector< DictionaryEntry > yaze::editor::BuildDictionaryEntries ( Rom rom)

◆ ReplaceAllDictionaryWords()

std::string yaze::editor::ReplaceAllDictionaryWords ( std::string  str,
const std::vector< DictionaryEntry > &  dictionary 
)

◆ FindRealDictionaryEntry()

DictionaryEntry yaze::editor::FindRealDictionaryEntry ( uint8_t  value,
const std::vector< DictionaryEntry > &  dictionary 
)

Definition at line 195 of file message_data.cc.

References DICTOFF.

Referenced by yaze::editor::MessagePreview::DrawCharacterToPreview().

◆ ParseSingleMessage()

◆ ParseMessageData()

std::vector< std::string > yaze::editor::ParseMessageData ( std::vector< MessageData > &  message_data,
const std::vector< DictionaryEntry > &  dictionary_entries 
)

◆ ReadAllTextData()

◆ LoadExpandedMessages()

absl::Status yaze::editor::LoadExpandedMessages ( std::string &  expanded_message_path,
std::vector< std::string > &  parsed_messages,
std::vector< MessageData > &  expanded_messages,
std::vector< DictionaryEntry > &  dictionary 
)

Definition at line 433 of file message_data.cc.

References yaze::Rom::LoadFromFile(), yaze::Rom::mutable_data(), ParseMessageData(), and ReadAllTextData().

Referenced by yaze::editor::MessageEditor::DrawExpandedMessageSettings().

Here is the call graph for this function:

◆ IsMouseHoveringOverEntity()

◆ MoveEntityOnGrid()

void yaze::editor::MoveEntityOnGrid ( zelda3::GameEntity entity,
ImVec2  canvas_p0,
ImVec2  scrolling,
bool  free_movement 
)

Definition at line 36 of file entity.cc.

References yaze::zelda3::GameEntity::set_x(), and yaze::zelda3::GameEntity::set_y().

Referenced by yaze::editor::OverworldEditor::DrawOverworldCanvas().

Here is the call graph for this function:

◆ DrawEntranceInserterPopup()

bool yaze::editor::DrawEntranceInserterPopup ( )

Definition at line 58 of file entity.cc.

References ICON_MD_CANCEL, ICON_MD_DONE, and yaze::gui::InputHex().

Here is the call graph for this function:

◆ DrawOverworldEntrancePopup()

◆ DrawExitInserterPopup()

void yaze::editor::DrawExitInserterPopup ( )

Definition at line 124 of file entity.cc.

References yaze::gui::InputHex().

Here is the call graph for this function:

◆ DrawExitEditorPopup()

◆ DrawItemInsertPopup()

void yaze::editor::DrawItemInsertPopup ( )

Definition at line 285 of file entity.cc.

References ICON_MD_CANCEL, ICON_MD_DONE, and yaze::zelda3::kSecretItemNames.

◆ DrawItemEditorPopup()

bool yaze::editor::DrawItemEditorPopup ( zelda3::OverworldItem item)
Todo:
Implement deleting OverworldItem objects, currently only hides them

Definition at line 315 of file entity.cc.

References yaze::zelda3::OverworldItem::deleted, ICON_MD_CLOSE, ICON_MD_DELETE, ICON_MD_DONE, yaze::zelda3::OverworldItem::id_, and yaze::zelda3::kSecretItemNames.

Referenced by yaze::editor::OverworldEditor::Update().

◆ DrawSpriteTable()

void yaze::editor::DrawSpriteTable ( std::function< void(int)>  onSpriteSelect)

Definition at line 352 of file entity.cc.

References yaze::editor::SpriteItem::SortWithSortSpecs(), SpriteItemColumnID_ID, and SpriteItemColumnID_Name.

Referenced by DrawSpriteEditorPopup(), and DrawSpriteInserterPopup().

Here is the call graph for this function:

◆ DrawSpriteInserterPopup()

void yaze::editor::DrawSpriteInserterPopup ( )

Definition at line 400 of file entity.cc.

References DrawSpriteTable(), and yaze::gui::InputHex().

Here is the call graph for this function:

◆ DrawSpriteEditorPopup()

◆ InsertEntrance()

absl::StatusOr< zelda3::OverworldEntrance * > yaze::editor::InsertEntrance ( zelda3::Overworld overworld,
ImVec2  mouse_pos,
int  current_map,
bool  is_hole = false 
)

Flat helper functions for entity insertion/manipulation.

Following ZScream's entity management pattern (EntranceMode.cs, ExitMode.cs, etc.) but implemented as free functions to minimize state management.

Key concepts from ZScream:

  • Find first deleted slot for insertion
  • Calculate map position from mouse coordinates
  • Use parent map ID for multi-area maps
  • Call UpdateMapProperties to sync position data

Insert a new entrance at the specified position

Follows ZScream's EntranceMode.AddEntrance() logic (EntranceMode.cs:53-148):

  • Finds first deleted entrance slot
  • Snaps position to 16x16 grid
  • Uses parent map ID for multi-area maps
  • Calls UpdateMapProperties to calculate game coordinates
Parameters
overworldOverworld data containing entrance arrays
mouse_posMouse position in canvas coordinates (world space)
current_mapCurrent map index being edited
is_holeTrue to insert a hole instead of entrance
Returns
Pointer to newly inserted entrance, or error if no slots available

Definition at line 9 of file entity_operations.cc.

References ClampToOverworldBounds(), GetParentMapId(), yaze::zelda3::Overworld::holes(), yaze::zelda3::Overworld::is_loaded(), LOG_DEBUG, yaze::zelda3::Overworld::mutable_entrances(), yaze::zelda3::Overworld::overworld_map(), and SnapToEntityGrid().

Referenced by yaze::editor::OverworldEditor::HandleEntityInsertion().

◆ InsertExit()

absl::StatusOr< zelda3::OverworldExit * > yaze::editor::InsertExit ( zelda3::Overworld overworld,
ImVec2  mouse_pos,
int  current_map 
)

Insert a new exit at the specified position.

Follows ZScream's ExitMode.AddExit() logic (ExitMode.cs:59-124):

  • Finds first deleted exit slot
  • Snaps position to 16x16 grid
  • Initializes exit with default scroll/camera values
  • Sets room ID to 0 (needs to be configured by user)
Parameters
overworldOverworld data containing exit arrays
mouse_posMouse position in canvas coordinates
current_mapCurrent map index being edited
Returns
Pointer to newly inserted exit, or error if no slots available

Definition at line 76 of file entity_operations.cc.

References ClampToOverworldBounds(), GetParentMapId(), yaze::zelda3::Overworld::is_loaded(), LOG_DEBUG, yaze::zelda3::Overworld::mutable_exits(), yaze::zelda3::Overworld::overworld_map(), and SnapToEntityGrid().

Referenced by yaze::editor::OverworldEditor::HandleEntityInsertion().

◆ InsertSprite()

absl::StatusOr< zelda3::Sprite * > yaze::editor::InsertSprite ( zelda3::Overworld overworld,
ImVec2  mouse_pos,
int  current_map,
int  game_state,
uint8_t  sprite_id = 0 
)

Insert a new sprite at the specified position.

Follows ZScream's SpriteMode sprite insertion (SpriteMode.cs:27-100):

  • Adds new sprite to game state array
  • Calculates map position and game coordinates
  • Sets sprite ID (default 0, user configures in popup)
Parameters
overworldOverworld data containing sprite arrays
mouse_posMouse position in canvas coordinates
current_mapCurrent map index being edited
game_stateCurrent game state (0=beginning, 1=zelda, 2=agahnim)
sprite_idSprite ID to insert (default 0)
Returns
Pointer to newly inserted sprite

Definition at line 128 of file entity_operations.cc.

References ClampToOverworldBounds(), GetParentMapId(), yaze::zelda3::Overworld::is_loaded(), LOG_DEBUG, yaze::zelda3::Overworld::mutable_sprites(), yaze::zelda3::Overworld::overworld_map(), SnapToEntityGrid(), yaze::zelda3::GameEntity::x_, and yaze::zelda3::GameEntity::y_.

Referenced by yaze::editor::OverworldEditor::HandleEntityInsertion().

◆ InsertItem()

absl::StatusOr< zelda3::OverworldItem * > yaze::editor::InsertItem ( zelda3::Overworld overworld,
ImVec2  mouse_pos,
int  current_map,
uint8_t  item_id = 0 
)

Insert a new item at the specified position.

Follows ZScream's ItemMode item insertion (ItemMode.cs:54-113):

  • Adds new item to all_items array
  • Calculates map position and game coordinates
  • Sets item ID (default 0, user configures in popup)
Parameters
overworldOverworld data containing item arrays
mouse_posMouse position in canvas coordinates
current_mapCurrent map index being edited
item_idItem ID to insert (default 0x00 - Nothing)
Returns
Pointer to newly inserted item

Definition at line 181 of file entity_operations.cc.

References ClampToOverworldBounds(), yaze::zelda3::OverworldItem::game_x_, yaze::zelda3::OverworldItem::game_y_, GetParentMapId(), yaze::zelda3::Overworld::is_loaded(), LOG_DEBUG, yaze::zelda3::Overworld::mutable_all_items(), yaze::zelda3::Overworld::overworld_map(), SnapToEntityGrid(), yaze::zelda3::GameEntity::x_, and yaze::zelda3::GameEntity::y_.

Referenced by yaze::editor::OverworldEditor::HandleEntityInsertion().

◆ GetParentMapId()

uint8_t yaze::editor::GetParentMapId ( const zelda3::OverworldMap map,
int  current_map 
)
inline

Helper to get parent map ID for multi-area maps.

Returns the parent map ID, handling the case where a map is its own parent. Matches ZScream logic where ParentID == 255 means use current map.

Definition at line 107 of file entity_operations.h.

References yaze::zelda3::OverworldMap::parent().

Referenced by InsertEntrance(), InsertExit(), InsertItem(), and InsertSprite().

Here is the call graph for this function:

◆ SnapToEntityGrid()

ImVec2 yaze::editor::SnapToEntityGrid ( ImVec2  pos)
inline

Snap position to 16x16 grid (standard entity positioning)

Definition at line 115 of file entity_operations.h.

Referenced by InsertEntrance(), InsertExit(), InsertItem(), and InsertSprite().

◆ ClampToOverworldBounds()

ImVec2 yaze::editor::ClampToOverworldBounds ( ImVec2  pos)
inline

Clamp position to valid overworld bounds.

Definition at line 125 of file entity_operations.h.

Referenced by InsertEntrance(), InsertExit(), InsertItem(), and InsertSprite().

◆ kOverworldCanvasSize()

constexpr ImVec2 yaze::editor::kOverworldCanvasSize ( kOverworldMapSize 8,
kOverworldMapSize 8 
)
constexpr

◆ kCurrentGfxCanvasSize()

constexpr ImVec2 yaze::editor::kCurrentGfxCanvasSize ( 0x100+  1,
0x10 *0x40+  1 
)
constexpr

◆ kBlocksetCanvasSize()

constexpr ImVec2 yaze::editor::kBlocksetCanvasSize ( 0x100+  1,
0x4000+  1 
)
constexpr

◆ kGraphicsBinCanvasSize()

constexpr ImVec2 yaze::editor::kGraphicsBinCanvasSize ( 0x100+  1,
kNumSheetsToLoad *0x40+  1 
)
constexpr

◆ DisplayPalette()

absl::Status yaze::editor::DisplayPalette ( gfx::SnesPalette palette,
bool  loaded 
)

Display SNES palette with enhanced ROM hacking features.

Parameters
paletteSNES palette to display
loadedWhether the palette has been loaded from ROM

Enhanced Features:

  • Real-time color preview with SNES format conversion
  • Drag-and-drop color swapping for palette editing
  • Color picker integration with ROM palette system
  • Undo/redo support for palette modifications
  • Export functionality for palette sharing

Performance Notes:

  • Static color arrays to avoid repeated allocations
  • Cached color conversions for fast rendering
  • Batch palette updates to minimize ROM writes

Definition at line 99 of file palette_editor.cc.

References kPalButtonFlags, yaze::gfx::SnesPalette::size(), and TEXT_WITH_SEPARATOR.

Here is the call graph for this function:

◆ ConfigureEditorShortcuts()

◆ ConfigureMenuShortcuts()

◆ PrintShortcut()

std::string yaze::editor::PrintShortcut ( const std::vector< ImGuiKey > &  keys)

◆ ParseShortcut()

std::vector< ImGuiKey > yaze::editor::ParseShortcut ( const std::string &  shortcut)

Definition at line 106 of file shortcut_manager.cc.

References yaze::gui::MapKeyToImGuiKey().

Here is the call graph for this function:

◆ ExecuteShortcuts()

void yaze::editor::ExecuteShortcuts ( const ShortcutManager shortcut_manager)

Definition at line 144 of file shortcut_manager.cc.

References yaze::editor::ShortcutManager::GetShortcuts().

Referenced by yaze::editor::EditorManager::Update().

Here is the call graph for this function:

Variable Documentation

◆ kEditorNames

constexpr std::array<const char*, 14> yaze::editor::kEditorNames
constexpr
Initial value:
= {
"Unknown",
"Assembly", "Dungeon", "Emulator", "Graphics", "Music", "Overworld",
"Palette", "Screen", "Sprite", "Message", "Hex", "Agent", "Settings",
}

Definition at line 110 of file editor.h.

Referenced by yaze::editor::EditorManager::GenerateUniqueEditorTitle(), and yaze::editor::anonymous_namespace{editor_manager.cc}::GetEditorName().

◆ kOverworldEditorName

constexpr const char* yaze::editor::kOverworldEditorName = ICON_MD_LAYERS " Overworld Editor"
constexpr

Definition at line 229 of file editor_manager.cc.

◆ kGraphicsEditorName

constexpr const char* yaze::editor::kGraphicsEditorName = ICON_MD_PHOTO " Graphics Editor"
constexpr

Definition at line 230 of file editor_manager.cc.

◆ kPaletteEditorName

constexpr const char* yaze::editor::kPaletteEditorName = ICON_MD_PALETTE " Palette Editor"
constexpr

Definition at line 231 of file editor_manager.cc.

◆ kScreenEditorName

constexpr const char* yaze::editor::kScreenEditorName = ICON_MD_SCREENSHOT " Screen Editor"
constexpr

Definition at line 232 of file editor_manager.cc.

◆ kSpriteEditorName

constexpr const char* yaze::editor::kSpriteEditorName = ICON_MD_SMART_TOY " Sprite Editor"
constexpr

Definition at line 233 of file editor_manager.cc.

◆ kMessageEditorName

constexpr const char* yaze::editor::kMessageEditorName = ICON_MD_MESSAGE " Message Editor"
constexpr

Definition at line 234 of file editor_manager.cc.

◆ kSettingsEditorName

constexpr const char* yaze::editor::kSettingsEditorName = ICON_MD_SETTINGS " Settings Editor"
constexpr

Definition at line 235 of file editor_manager.cc.

◆ kAssemblyEditorName

constexpr const char* yaze::editor::kAssemblyEditorName = ICON_MD_CODE " Assembly Editor"
constexpr

Definition at line 236 of file editor_manager.cc.

◆ kDungeonEditorName

constexpr const char* yaze::editor::kDungeonEditorName = ICON_MD_CASTLE " Dungeon Editor"
constexpr

Definition at line 237 of file editor_manager.cc.

◆ kMusicEditorName

constexpr const char* yaze::editor::kMusicEditorName = ICON_MD_MUSIC_NOTE " Music Editor"
constexpr

Definition at line 238 of file editor_manager.cc.

◆ kGfxEditTableFlags

constexpr ImGuiTableFlags yaze::editor::kGfxEditTableFlags
constexpr
Initial value:
=
ImGuiTableFlags_Borders | ImGuiTableFlags_Resizable |
ImGuiTableFlags_Reorderable | ImGuiTableFlags_Hideable |
ImGuiTableFlags_SizingFixedFit

Definition at line 41 of file graphics_editor.cc.

Referenced by yaze::editor::GraphicsEditor::UpdateGfxEdit(), and yaze::editor::GraphicsEditor::UpdateLinkGfxView().

◆ kSuperDonkeyTiles

const std::string yaze::editor::kSuperDonkeyTiles[]
Initial value:
= {
"97C05", "98219", "9871E", "98C00", "99084", "995AF", "99DE0", "9A27E",
"9A741", "9AC31", "9B07E", "9B55C", "9B963", "9BB99", "9C009", "9C4B4",
"9C92B", "9CDD6", "9D2C2", "9E037", "9E527", "9EA56", "9EF65", "9FCD1",
"A0193", "A059E", "A0B17", "A0FB6", "A14A5", "A1988", "A1E66", "A232B",
"A27F0", "A2B6E", "A302C", "A3453", "A38CA", "A42BB", "A470C", "A4BA9",
"A5089", "A5385", "A5742", "A5BCC", "A6017", "A6361", "A66F8"}

Definition at line 24 of file graphics_editor.h.

Referenced by yaze::editor::GraphicsEditor::DecompressSuperDonkey().

◆ kSuperDonkeySprites

const std::string yaze::editor::kSuperDonkeySprites[]
Initial value:
= {
"A8E5D", "A9435", "A9934", "A9D83", "AA2F1", "AA6D4", "AABE4", "AB127",
"AB65A", "ABBDD", "AC38D", "AC797", "ACCC8", "AD0AE", "AD245", "AD554",
"ADAAC", "ADECC", "AE453", "AE9D2", "AEF40", "AF3C9", "AF92E", "AFE9D",
"B03D2", "B09AC", "B0F0C", "B1430", "B1859", "B1E01", "B229A", "B2854",
"B2D27", "B31D7", "B3B58", "B40B5", "B45A5", "B4D64", "B5031", "B555F",
"B5F30", "B6858", "B70DD", "B7526", "B79EC", "B7C83", "B80F7", "B85CC",
"B8A3F", "B8F97", "B94F2", "B9A20", "B9E9A", "BA3A2", "BA8F6", "BACDC",
"BB1F9", "BB781", "BBCCA", "BC26D", "BC7D4", "BCBB0", "BD082", "BD5FC",
"BE115", "BE5C2", "BEB63", "BF0CB", "BF607", "BFA55", "BFD71", "C017D",
"C0567", "C0981", "C0BA7", "C116D", "C166A", "C1FE0", "C24CE", "C2B19"}

Definition at line 32 of file graphics_editor.h.

Referenced by yaze::editor::GraphicsEditor::DecompressSuperDonkey().

◆ kRedPen

constexpr uint32_t yaze::editor::kRedPen = 0xFF0000FF
constexpr

Definition at line 26 of file screen_editor.cc.

Referenced by yaze::editor::ScreenEditor::DrawDungeonMapScreen().

◆ kBankToken

const std::string yaze::editor::kBankToken = "BANK"

Definition at line 96 of file message_data.h.

Referenced by ReadAllTextData().

◆ DICTIONARYTOKEN

const std::string yaze::editor::DICTIONARYTOKEN = "D"

◆ kMessageTerminator

constexpr uint8_t yaze::editor::kMessageTerminator = 0x7F
constexpr

◆ DICTOFF

constexpr uint8_t yaze::editor::DICTOFF = 0x88
constexpr

◆ kWidthArraySize

constexpr uint8_t yaze::editor::kWidthArraySize = 100
constexpr

◆ kTextData

◆ kTextDataEnd

constexpr int yaze::editor::kTextDataEnd = 0xE7FFF
constexpr

◆ kNumDictionaryEntries

constexpr int yaze::editor::kNumDictionaryEntries = 0x61
constexpr

Definition at line 174 of file message_data.h.

Referenced by BuildDictionaryEntries(), and yaze::test::TEST_F().

◆ kPointersDictionaries

constexpr int yaze::editor::kPointersDictionaries = 0x74703
constexpr

Definition at line 175 of file message_data.h.

Referenced by BuildDictionaryEntries(), ParseSingleMessage(), and ReadAllTextData().

◆ kScrollVertical

constexpr uint8_t yaze::editor::kScrollVertical = 0x73
constexpr

◆ kLine1

constexpr uint8_t yaze::editor::kLine1 = 0x74
constexpr

◆ kLine2

constexpr uint8_t yaze::editor::kLine2 = 0x75
constexpr

◆ kLine3

constexpr uint8_t yaze::editor::kLine3 = 0x76
constexpr

◆ CHEESE

const std::string yaze::editor::CHEESE = "\uBEBE"

◆ kTextData2

constexpr int yaze::editor::kTextData2 = 0x75F40
constexpr

◆ kTextData2End

constexpr int yaze::editor::kTextData2End = 0x773FF
constexpr

◆ kMessageTableFlags

constexpr ImGuiTableFlags yaze::editor::kMessageTableFlags
constexpr
Initial value:
= ImGuiTableFlags_Hideable |
ImGuiTableFlags_Borders |
ImGuiTableFlags_Resizable

Definition at line 61 of file message_editor.cc.

Referenced by yaze::editor::MessageEditor::DrawDictionary(), and yaze::editor::MessageEditor::DrawMessageList().

◆ kGfxFont

constexpr int yaze::editor::kGfxFont = 0x70000
constexpr

Definition at line 21 of file message_editor.h.

Referenced by yaze::editor::MessageEditor::Initialize().

◆ kCharactersWidth

constexpr int yaze::editor::kCharactersWidth = 0x74ADF
constexpr

◆ kNumMessages

constexpr int yaze::editor::kNumMessages = 396
constexpr

Definition at line 23 of file message_editor.h.

◆ kFontGfxMessageSize

constexpr int yaze::editor::kFontGfxMessageSize = 128
constexpr

Definition at line 24 of file message_editor.h.

Referenced by yaze::editor::MessageEditor::Initialize().

◆ kFontGfxMessageDepth

constexpr int yaze::editor::kFontGfxMessageDepth = 8
constexpr

Definition at line 25 of file message_editor.h.

Referenced by yaze::editor::MessageEditor::Initialize().

◆ kFontGfx16Size

constexpr int yaze::editor::kFontGfx16Size = 172 * 4096
constexpr

Definition at line 26 of file message_editor.h.

◆ kBlockTerminator

constexpr uint8_t yaze::editor::kBlockTerminator = 0x80
constexpr

Definition at line 28 of file message_editor.h.

Referenced by yaze::editor::MessageEditor::Save().

◆ kMessageBankChangeId

constexpr uint8_t yaze::editor::kMessageBankChangeId = 0x80
constexpr

Definition at line 29 of file message_editor.h.

◆ kCurrentMessageWidth

constexpr int yaze::editor::kCurrentMessageWidth = 172
constexpr

◆ kCurrentMessageHeight

constexpr int yaze::editor::kCurrentMessageHeight = 4096
constexpr

◆ toolset_table_flags_

const ImGuiTableFlags yaze::editor::toolset_table_flags_ = ImGuiTableFlags_SizingFixedFit

Definition at line 57 of file music_editor.h.

◆ music_editor_flags_

const ImGuiTableFlags yaze::editor::music_editor_flags_
Initial value:
= ImGuiTableFlags_SizingFixedFit |
ImGuiTableFlags_Resizable |
ImGuiTableFlags_Reorderable

Definition at line 58 of file music_editor.h.

◆ kInputFieldSize

◆ k4BPP

constexpr unsigned int yaze::editor::k4BPP = 4
constexpr

Definition at line 25 of file overworld_editor.h.

◆ kByteSize

constexpr unsigned int yaze::editor::kByteSize = 3
constexpr

Definition at line 26 of file overworld_editor.h.

◆ kMessageIdSize

constexpr unsigned int yaze::editor::kMessageIdSize = 5
constexpr

Definition at line 27 of file overworld_editor.h.

◆ kNumSheetsToLoad

constexpr unsigned int yaze::editor::kNumSheetsToLoad = 223
constexpr

Definition at line 28 of file overworld_editor.h.

◆ kOverworldMapSize

◆ kOWMapFlags

constexpr ImGuiTableFlags yaze::editor::kOWMapFlags
constexpr
Initial value:
=
ImGuiTableFlags_Borders | ImGuiTableFlags_Resizable |
ImGuiTableFlags_RowBg | ImGuiTableFlags_SizingStretchProp

Definition at line 36 of file overworld_editor.h.

◆ kWorldList

constexpr absl::string_view yaze::editor::kWorldList
constexpr
Initial value:
=
"Light World\0Dark World\0Extra World\0"

Definition at line 40 of file overworld_editor.h.

◆ kGamePartComboString

constexpr absl::string_view yaze::editor::kGamePartComboString = "Part 0\0Part 1\0Part 2\0"
constexpr

Definition at line 43 of file overworld_editor.h.

◆ kOWMapTable

constexpr absl::string_view yaze::editor::kOWMapTable = "#MapSettingsTable"
constexpr

Definition at line 45 of file overworld_editor.h.

◆ kTile16Size

◆ kTile8Size

constexpr int yaze::editor::kTile8Size = 8
constexpr

◆ kTilesheetEditorWidth

constexpr int yaze::editor::kTilesheetEditorWidth = 0x100
constexpr

Definition at line 27 of file tile16_editor.h.

◆ kTilesheetEditorHeight

constexpr int yaze::editor::kTilesheetEditorHeight = 0x4000
constexpr

Definition at line 28 of file tile16_editor.h.

◆ kTile16CanvasSize

constexpr int yaze::editor::kTile16CanvasSize = 0x20
constexpr

Definition at line 29 of file tile16_editor.h.

◆ kTile8CanvasHeight

constexpr int yaze::editor::kTile8CanvasHeight = 0x175
constexpr

Definition at line 30 of file tile16_editor.h.

◆ kNumScratchSlots

constexpr int yaze::editor::kNumScratchSlots = 4
constexpr

Definition at line 31 of file tile16_editor.h.

◆ kNumPalettes

constexpr int yaze::editor::kNumPalettes = 8
constexpr

Definition at line 32 of file tile16_editor.h.

Referenced by yaze::editor::PaletteEditor::Load().

◆ kTile8PixelCount

constexpr int yaze::editor::kTile8PixelCount = 64
constexpr

Definition at line 33 of file tile16_editor.h.

◆ kTile16PixelCount

constexpr int yaze::editor::kTile16PixelCount = 256
constexpr

◆ kGameStateNames

constexpr const char* yaze::editor::kGameStateNames[]
inlineconstexpr

◆ kWorldNames

constexpr const char* yaze::editor::kWorldNames[]
inlineconstexpr
Initial value:
= {
"Light World",
"Dark World",
"Special World"
}

Definition at line 15 of file ui_constants.h.

Referenced by yaze::editor::MapPropertiesSystem::DrawSimplifiedMapSettings().

◆ kAreaSizeNames

constexpr const char* yaze::editor::kAreaSizeNames[]
inlineconstexpr
Initial value:
= {
"Small (1x1)",
"Large (2x2)",
"Wide (2x1)",
"Tall (1x2)"
}

Definition at line 22 of file ui_constants.h.

Referenced by yaze::editor::MapPropertiesSystem::DrawPropertiesPopup(), and yaze::editor::MapPropertiesSystem::DrawSimplifiedMapSettings().

◆ kHexByteInputWidth

constexpr float yaze::editor::kHexByteInputWidth = 50.f
inlineconstexpr

◆ kHexWordInputWidth

constexpr float yaze::editor::kHexWordInputWidth = 70.f
inlineconstexpr

◆ kCompactButtonWidth

constexpr float yaze::editor::kCompactButtonWidth = 60.f
inlineconstexpr

Definition at line 33 of file ui_constants.h.

◆ kIconButtonWidth

constexpr float yaze::editor::kIconButtonWidth = 30.f
inlineconstexpr

◆ kSmallButtonWidth

constexpr float yaze::editor::kSmallButtonWidth = 80.f
inlineconstexpr

Definition at line 35 of file ui_constants.h.

◆ kMediumButtonWidth

constexpr float yaze::editor::kMediumButtonWidth = 90.f
inlineconstexpr

Definition at line 36 of file ui_constants.h.

◆ kLargeButtonWidth

constexpr float yaze::editor::kLargeButtonWidth = 100.f
inlineconstexpr

Definition at line 37 of file ui_constants.h.

◆ kTableColumnWorld

constexpr float yaze::editor::kTableColumnWorld = 120.f
inlineconstexpr

◆ kTableColumnMap

constexpr float yaze::editor::kTableColumnMap = 80.f
inlineconstexpr

◆ kTableColumnAreaSize

constexpr float yaze::editor::kTableColumnAreaSize = 120.f
inlineconstexpr

◆ kTableColumnLock

constexpr float yaze::editor::kTableColumnLock = 50.f
inlineconstexpr

◆ kTableColumnGraphics

constexpr float yaze::editor::kTableColumnGraphics = 80.f
inlineconstexpr

◆ kTableColumnPalettes

constexpr float yaze::editor::kTableColumnPalettes = 80.f
inlineconstexpr

◆ kTableColumnProperties

constexpr float yaze::editor::kTableColumnProperties = 100.f
inlineconstexpr

◆ kTableColumnTools

constexpr float yaze::editor::kTableColumnTools = 80.f
inlineconstexpr

Definition at line 47 of file ui_constants.h.

◆ kTableColumnView

constexpr float yaze::editor::kTableColumnView = 80.f
inlineconstexpr

◆ kTableColumnQuick

constexpr float yaze::editor::kTableColumnQuick = 80.f
inlineconstexpr

◆ kComboWorldWidth

constexpr float yaze::editor::kComboWorldWidth = 115.f
inlineconstexpr

◆ kComboAreaSizeWidth

constexpr float yaze::editor::kComboAreaSizeWidth = 115.f
inlineconstexpr

◆ kComboGameStateWidth

constexpr float yaze::editor::kComboGameStateWidth = 100.f
inlineconstexpr

◆ kTableButtonGraphics

constexpr float yaze::editor::kTableButtonGraphics = 75.f
inlineconstexpr

◆ kTableButtonPalettes

constexpr float yaze::editor::kTableButtonPalettes = 75.f
inlineconstexpr

◆ kTableButtonProperties

constexpr float yaze::editor::kTableButtonProperties = 95.f
inlineconstexpr

◆ kTableButtonTools

constexpr float yaze::editor::kTableButtonTools = 75.f
inlineconstexpr

Definition at line 60 of file ui_constants.h.

◆ kTableButtonView

constexpr float yaze::editor::kTableButtonView = 75.f
inlineconstexpr

◆ kTableButtonQuick

constexpr float yaze::editor::kTableButtonQuick = 75.f
inlineconstexpr

◆ kCompactItemSpacing

constexpr float yaze::editor::kCompactItemSpacing = 4.f
inlineconstexpr

Definition at line 65 of file ui_constants.h.

◆ kCompactFramePadding

constexpr float yaze::editor::kCompactFramePadding = 2.f
inlineconstexpr

Definition at line 66 of file ui_constants.h.

◆ kPaletteTableFlags

constexpr ImGuiTableFlags yaze::editor::kPaletteTableFlags
constexpr
Initial value:
=
ImGuiTableFlags_Reorderable | ImGuiTableFlags_Resizable |
ImGuiTableFlags_SizingStretchSame | ImGuiTableFlags_Hideable

Definition at line 42 of file palette_editor.cc.

◆ kPalNoAlpha

constexpr ImGuiColorEditFlags yaze::editor::kPalNoAlpha = ImGuiColorEditFlags_NoAlpha
constexpr

Definition at line 46 of file palette_editor.cc.

◆ kPalButtonFlags

constexpr ImGuiColorEditFlags yaze::editor::kPalButtonFlags
constexpr
Initial value:
= ImGuiColorEditFlags_NoAlpha |
ImGuiColorEditFlags_NoPicker |
ImGuiColorEditFlags_NoTooltip

Definition at line 48 of file palette_editor.cc.

Referenced by DisplayPalette(), yaze::editor::PaletteEditor::DrawCustomPaletteCard(), and yaze::editor::PaletteEditor::DrawQuickAccessCard().

◆ kColorPopupFlags

constexpr ImGuiColorEditFlags yaze::editor::kColorPopupFlags
constexpr
Initial value:
=
ImGuiColorEditFlags_NoInputs | ImGuiColorEditFlags_NoAlpha |
ImGuiColorEditFlags_DisplayRGB | ImGuiColorEditFlags_DisplayHSV |
ImGuiColorEditFlags_DisplayHex

Definition at line 52 of file palette_editor.cc.

Referenced by yaze::editor::PaletteEditor::DrawCustomPalette(), yaze::editor::PaletteEditor::DrawCustomPaletteCard(), yaze::editor::PaletteEditor::DrawQuickAccessCard(), yaze::editor::PaletteEditor::DrawQuickAccessTab(), and yaze::editor::PaletteEditor::HandleColorPopup().

◆ kSpriteTabFlags

constexpr ImGuiTabItemFlags yaze::editor::kSpriteTabFlags
constexpr
Initial value:
=
ImGuiTabItemFlags_Trailing | ImGuiTabItemFlags_NoTooltip

Definition at line 17 of file sprite_editor.h.

◆ kSpriteTabBarFlags

constexpr ImGuiTabBarFlags yaze::editor::kSpriteTabBarFlags
constexpr
Initial value:
=
ImGuiTabBarFlags_AutoSelectNewTabs | ImGuiTabBarFlags_Reorderable |
ImGuiTabBarFlags_FittingPolicyResizeDown |
ImGuiTabBarFlags_TabListPopupButton

Definition at line 20 of file sprite_editor.h.

Referenced by yaze::editor::SpriteEditor::DrawVanillaSpriteEditor().

◆ kSpriteTableFlags

constexpr ImGuiTableFlags yaze::editor::kSpriteTableFlags
constexpr
Initial value:
=
ImGuiTableFlags_Resizable | ImGuiTableFlags_Reorderable |
ImGuiTableFlags_Hideable | ImGuiTableFlags_BordersOuter |
ImGuiTableFlags_BordersV

Definition at line 25 of file sprite_editor.h.