Modern, robust canvas for drawing and manipulating graphics. More...
#include <canvas.h>
Public Types | |
| using | CanvasMenuItem = gui::CanvasMenuItem |
Public Member Functions | |
| Canvas () | |
| ~Canvas () | |
| void | Init (const CanvasConfig &config) |
| Initialize canvas with configuration (post-construction) Preferred over constructor parameters for new code. | |
| void | Init (const std::string &id, ImVec2 canvas_size=ImVec2(0, 0)) |
| Canvas (const std::string &id) | |
| Canvas (const std::string &id, ImVec2 canvas_size) | |
| Canvas (const std::string &id, ImVec2 canvas_size, CanvasGridSize grid_size) | |
| Canvas (const std::string &id, ImVec2 canvas_size, CanvasGridSize grid_size, float global_scale) | |
| Canvas (gfx::IRenderer *renderer) | |
| Canvas (gfx::IRenderer *renderer, const std::string &id) | |
| Canvas (gfx::IRenderer *renderer, const std::string &id, ImVec2 canvas_size) | |
| Canvas (gfx::IRenderer *renderer, const std::string &id, ImVec2 canvas_size, CanvasGridSize grid_size) | |
| Canvas (gfx::IRenderer *renderer, const std::string &id, ImVec2 canvas_size, CanvasGridSize grid_size, float global_scale) | |
| void | SetRenderer (gfx::IRenderer *renderer) |
| gfx::IRenderer * | renderer () const |
| void | SetGridSize (CanvasGridSize grid_size) |
| void | SetCustomGridStep (float step) |
| void | SetCanvasGridSize (CanvasGridSize grid_size) |
| CanvasGridSize | grid_size () const |
| void | UpdateColorPainter (gfx::IRenderer *renderer, gfx::Bitmap &bitmap, const ImVec4 &color, const std::function< void()> &event, int tile_size, float scale=1.0f) |
| void | UpdateInfoGrid (ImVec2 bg_size, float grid_size=64.0f, int label_id=0) |
| void | Begin (ImVec2 canvas_size=ImVec2(0, 0)) |
| Begin canvas rendering (ImGui-style) | |
| void | Begin (const CanvasFrameOptions &options) |
| void | End () |
| End canvas rendering (ImGui-style) | |
| void | End (const CanvasFrameOptions &options) |
| void | DrawBackground (ImVec2 canvas_size=ImVec2(0, 0)) |
| void | DrawContextMenu () |
| void | AddContextMenuItem (const gui::CanvasMenuItem &item) |
| void | ClearContextMenuItems () |
| CanvasMenuDefinition & | editor_menu () |
| const CanvasMenuDefinition & | editor_menu () const |
| void | SetContextMenuEnabled (bool enabled) |
| void | SetShowBuiltinContextMenu (bool show) |
| void | OpenPersistentPopup (const std::string &popup_id, std::function< void()> render_callback) |
| void | ClosePersistentPopup (const std::string &popup_id) |
| void | RenderPersistentPopups () |
| PopupRegistry & | GetPopupRegistry () |
| const PopupRegistry & | GetPopupRegistry () const |
| void | ShowAdvancedCanvasProperties () |
| void | ShowScalingControls () |
| void | SetZoomToFit (const gfx::Bitmap &bitmap) |
| void | ResetView () |
| void | ApplyConfigSnapshot (const CanvasConfig &snapshot) |
| void | ApplyScaleSnapshot (const CanvasConfig &snapshot) |
| CanvasConfig & | GetConfig () |
| const CanvasConfig & | GetConfig () const |
| CanvasSelection & | GetSelection () |
| const CanvasSelection & | GetSelection () const |
| void | InitializePaletteEditor (Rom *rom) |
| void | ShowPaletteEditor () |
| void | ShowColorAnalysis () |
| bool | ApplyROMPalette (int group_index, int palette_index) |
| void | ShowBppFormatSelector () |
| void | ShowBppAnalysis () |
| void | ShowBppConversionDialog () |
| bool | ConvertBitmapFormat (gfx::BppFormat target_format) |
| gfx::BppFormat | GetCurrentBppFormat () const |
| void | InitializeEnhancedComponents () |
| void | SetUsageMode (CanvasUsage usage) |
| auto | usage_mode () const |
| void | RecordCanvasOperation (const std::string &operation_name, double time_ms) |
| void | ShowPerformanceUI () |
| void | ShowUsageReport () |
| CanvasInteractionHandler & | GetInteractionHandler () |
| const CanvasInteractionHandler & | GetInteractionHandler () const |
| CanvasAutomationAPI * | GetAutomationAPI () |
| void | InitializeDefaults () |
| void | Cleanup () |
| ImVec2 | GetMinimumSize () const |
| ImVec2 | GetPreferredSize () const |
| ImVec2 | GetCurrentSize () const |
| void | SetAutoResize (bool auto_resize) |
| bool | IsAutoResize () const |
| void | ReserveTableSpace (const std::string &label="") |
| bool | BeginTableCanvas (const std::string &label="") |
| void | EndTableCanvas () |
| CanvasRuntime | BeginInTable (const std::string &label, const CanvasFrameOptions &options) |
| Begin canvas in table cell with frame options (modern API) Returns CanvasRuntime for stateless helper usage. Handles child sizing, scrollbars, and table integration. | |
| void | EndInTable (CanvasRuntime &runtime, const CanvasFrameOptions &options) |
| bool | HasValidSelection () const |
| bool | WasClicked (ImGuiMouseButton button=ImGuiMouseButton_Left) const |
| bool | WasDoubleClicked (ImGuiMouseButton button=ImGuiMouseButton_Left) const |
| ImVec2 | GetLastClickPosition () const |
| bool | DrawTilePainter (const Bitmap &bitmap, int size, float scale=1.0f) |
| bool | DrawSolidTilePainter (const ImVec4 &color, int size) |
| void | DrawTileOnBitmap (int tile_size, gfx::Bitmap *bitmap, ImVec4 color) |
| void | DrawOutline (int x, int y, int w, int h) |
| void | DrawOutlineWithColor (int x, int y, int w, int h, ImVec4 color) |
| void | DrawOutlineWithColor (int x, int y, int w, int h, uint32_t color) |
| void | DrawRect (int x, int y, int w, int h, ImVec4 color) |
| void | DrawText (const std::string &text, int x, int y) |
| void | DrawGridLines (float grid_step) |
| void | DrawInfoGrid (float grid_step=64.0f, int tile_id_offset=8, int label_id=0) |
| void | DrawLayeredElements () |
| int | GetTileIdFromMousePos () |
| void | DrawCustomHighlight (float grid_step) |
| bool | IsMouseHovering () const |
| void | ZoomIn () |
| void | ZoomOut () |
| const ImVector< ImVec2 > & | points () const |
| ImVector< ImVec2 > * | mutable_points () |
| auto | push_back (ImVec2 pos) |
| auto | draw_list () const |
| auto | zero_point () const |
| ImVec2 | ToCanvasPos (ImVec2 local) const |
| auto | scrolling () const |
| void | set_scrolling (ImVec2 scroll) |
| auto | drawn_tile_position () const |
| auto | canvas_size () const |
| void | set_global_scale (float scale) |
| void | set_draggable (bool draggable) |
| bool | IsSelectRectActive () const |
| const std::vector< ImVec2 > & | GetSelectedTiles () const |
| ImVec2 | GetSelectedTilePos () const |
| void | SetSelectedTilePos (ImVec2 pos) |
| void | SetCanvasSize (ImVec2 canvas_size) |
| float | GetGlobalScale () const |
| void | SetGlobalScale (float scale) |
| bool * | GetCustomLabelsEnabled () |
| float | GetGridStep () const |
| void | SetClampRectToLocalMaps (bool clamp) |
| bool | GetClampRectToLocalMaps () const |
| float | GetCanvasWidth () const |
| float | GetCanvasHeight () const |
| auto | select_rect_active () const |
| auto | selected_tiles () const |
| auto | selected_tile_pos () const |
| void | set_selected_tile_pos (ImVec2 pos) |
| auto | global_scale () const |
| auto | custom_labels_enabled () |
| auto | custom_step () const |
| auto | width () const |
| auto | height () const |
| auto | canvas_id () const |
| void | DrawBitmap (Bitmap &bitmap, int border_offset, float scale) |
| void | DrawBitmap (Bitmap &bitmap, int x_offset, int y_offset, float scale=1.0f, int alpha=255) |
| void | DrawBitmap (Bitmap &bitmap, ImVec2 dest_pos, ImVec2 dest_size, ImVec2 src_pos, ImVec2 src_size) |
| void | DrawBitmapTable (const BitmapTable &gfx_bin) |
| void | DrawBitmapGroup (std::vector< int > &group, gfx::Tilemap &tilemap, int tile_size, float scale=1.0f, int local_map_size=0x200, ImVec2 total_map_size=ImVec2(0x1000, 0x1000)) |
| Draw group of bitmaps for multi-tile selection preview. | |
| void | DrawBitmapPreview (Bitmap &bitmap, const BitmapPreviewOptions &options) |
| bool | DrawTilemapPainter (gfx::Tilemap &tilemap, int current_tile) |
| void | DrawSelectRect (int current_map, int tile_size=0x10, float scale=1.0f) |
| bool | DrawTileSelector (int size, int size_y=0) |
| void | DrawGrid (float grid_step=64.0f, int tile_id_offset=8) |
| void | DrawOverlay () |
| auto | labels (int i) |
| auto | mutable_labels (int i) |
| auto | set_current_labels (int i) |
| auto | set_highlight_tile_id (int i) |
| auto | mutable_selected_tiles () |
| auto | mutable_selected_points () |
| auto | selected_points () const |
| auto | hover_mouse_pos () const |
| void | set_rom (Rom *rom) |
| Rom * | rom () const |
| void | SetGameData (zelda3::GameData *game_data) |
| zelda3::GameData * | game_data () const |
| void | AddImageAt (ImTextureID texture, ImVec2 local_top_left, ImVec2 size) |
| void | AddRectFilledAt (ImVec2 local_top_left, ImVec2 size, uint32_t color) |
| void | AddTextAt (ImVec2 local_pos, const std::string &text, uint32_t color) |
Public Attributes | |
| std::unique_ptr< CanvasContextMenu > | context_menu_ |
| std::shared_ptr< CanvasUsageTracker > | usage_tracker_ |
| std::shared_ptr< CanvasPerformanceIntegration > | performance_integration_ |
| CanvasInteractionHandler | interaction_handler_ |
Private Member Functions | |
| void | DrawContextMenuItem (const gui::CanvasMenuItem &item) |
| CanvasRuntime | BuildCurrentRuntime () const |
| CanvasExtensions & | EnsureExtensions () |
Modern, robust canvas for drawing and manipulating graphics.
Following ImGui design patterns, this Canvas class provides:
| yaze::gui::Canvas::Canvas | ( | ) |
Definition at line 21 of file canvas.cc.
References InitializeDefaults().

|
default |
|
explicit |
Definition at line 26 of file canvas.cc.
References InitializeDefaults().

|
explicit |
Definition at line 31 of file canvas.cc.
References canvas_size(), yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::custom_canvas_size, and InitializeDefaults().

|
explicit |
Definition at line 39 of file canvas.cc.
References canvas_size(), yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::custom_canvas_size, grid_size(), InitializeDefaults(), and SetGridSize().

|
explicit |
Definition at line 49 of file canvas.cc.
References canvas_size(), yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::custom_canvas_size, global_scale(), yaze::gui::CanvasConfig::global_scale, grid_size(), InitializeDefaults(), and SetGridSize().
|
explicit |
Definition at line 61 of file canvas.cc.
References InitializeDefaults().

|
explicit |
Definition at line 65 of file canvas.cc.
References InitializeDefaults().

|
explicit |
Definition at line 70 of file canvas.cc.
References canvas_size(), yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::custom_canvas_size, and InitializeDefaults().

|
explicit |
Definition at line 79 of file canvas.cc.
References canvas_size(), yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::custom_canvas_size, grid_size(), InitializeDefaults(), and SetGridSize().

|
explicit |
Definition at line 89 of file canvas.cc.
References canvas_size(), yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::custom_canvas_size, global_scale(), yaze::gui::CanvasConfig::global_scale, grid_size(), InitializeDefaults(), and SetGridSize().
| void yaze::gui::Canvas::Init | ( | const CanvasConfig & | config | ) |
Initialize canvas with configuration (post-construction) Preferred over constructor parameters for new code.
Definition at line 102 of file canvas.cc.
References yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::custom_canvas_size, custom_canvas_size_, custom_step_, draggable_, yaze::gui::CanvasConfig::enable_context_menu, enable_context_menu_, yaze::gui::CanvasConfig::enable_custom_labels, enable_custom_labels_, yaze::gui::CanvasConfig::enable_grid, enable_grid_, yaze::gui::CanvasConfig::enable_hex_labels, enable_hex_tile_labels_, yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::grid_step, yaze::gui::CanvasConfig::is_draggable, yaze::gui::CanvasConfig::scrolling, and scrolling_.
| void yaze::gui::Canvas::Init | ( | const std::string & | id, |
| ImVec2 | canvas_size = ImVec2(0, 0) ) |
Definition at line 116 of file canvas.cc.
References canvas_id_, canvas_size(), yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, context_id_, yaze::gui::CanvasConfig::custom_canvas_size, yaze::gui::CanvasInteractionHandler::Initialize(), and interaction_handler_.

|
inline |
Definition at line 192 of file canvas.h.
References renderer(), and renderer_.

|
inline |
|
inline |
Definition at line 196 of file canvas.h.
References config_, custom_step_, grid_size(), yaze::gui::CanvasConfig::grid_step, yaze::gui::k16x16, yaze::gui::k32x32, yaze::gui::k64x64, and yaze::gui::k8x8.
Referenced by Canvas(), Canvas(), Canvas(), Canvas(), and SetCanvasGridSize().

|
inline |
Definition at line 215 of file canvas.h.
References config_, custom_step_, and yaze::gui::CanvasConfig::grid_step.
Referenced by Begin(), and yaze::gui::BeginCanvas().
|
inline |
Definition at line 221 of file canvas.h.
References grid_size(), and SetGridSize().

|
inline |
Definition at line 223 of file canvas.h.
References config_, yaze::gui::CanvasConfig::grid_step, yaze::gui::k16x16, yaze::gui::k32x32, yaze::gui::k64x64, and yaze::gui::k8x8.
Referenced by Canvas(), Canvas(), Canvas(), Canvas(), yaze::gui::CanvasAutomationAPI::GetDimensions(), SetCanvasGridSize(), SetGridSize(), and UpdateInfoGrid().
| void yaze::gui::Canvas::UpdateColorPainter | ( | gfx::IRenderer * | renderer, |
| gfx::Bitmap & | bitmap, | ||
| const ImVec4 & | color, | ||
| const std::function< void()> & | event, | ||
| int | tile_size, | ||
| float | scale = 1.0f ) |
Definition at line 522 of file canvas.cc.
References config_, DrawBackground(), DrawBitmap(), DrawContextMenu(), DrawGrid(), DrawOverlay(), DrawSolidTilePainter(), yaze::gui::CanvasConfig::global_scale, global_scale_, and yaze::gfx::Bitmap::UpdateTexture().
| void yaze::gui::Canvas::UpdateInfoGrid | ( | ImVec2 | bg_size, |
| float | grid_size = 64.0f, | ||
| int | label_id = 0 ) |
Definition at line 539 of file canvas.cc.
References config_, DrawBackground(), DrawInfoGrid(), DrawOverlay(), yaze::gui::CanvasConfig::enable_custom_labels, enable_custom_labels_, and grid_size().
Referenced by yaze::editor::OverworldEditor::DrawOverworldProperties().

| void yaze::gui::Canvas::Begin | ( | ImVec2 | canvas_size = ImVec2(0, 0) | ) |
Begin canvas rendering (ImGui-style)
Modern alternative to DrawBackground(). Handles:
Usage:
Definition at line 452 of file canvas.cc.
References canvas_size(), DrawBackground(), and DrawContextMenu().
Referenced by BeginInTable(), yaze::gui::CanvasFrame::CanvasFrame(), yaze::gui::ScopedCanvas::ScopedCanvas(), yaze::gui::ScopedCanvas::ScopedCanvas(), and yaze::gui::ScopedCanvas::ScopedCanvas().

| void yaze::gui::Canvas::Begin | ( | const CanvasFrameOptions & | options | ) |
Definition at line 469 of file canvas.cc.
References yaze::gui::BeginPadding(), canvas_id(), yaze::gui::CanvasFrameOptions::canvas_size, yaze::gui::CanvasFrameOptions::draw_context_menu, DrawBackground(), DrawContextMenu(), yaze::gui::EndPadding(), GetCurrentSize(), GetPreferredSize(), yaze::gui::CanvasFrameOptions::grid_step, IsAutoResize(), SetCustomGridStep(), yaze::gui::CanvasFrameOptions::show_scrollbar, and yaze::gui::CanvasFrameOptions::use_child_window.
| void yaze::gui::Canvas::End | ( | ) |
End canvas rendering (ImGui-style)
Modern alternative to manual DrawGrid() + DrawOverlay(). Automatically draws grid and overlay if enabled.
Definition at line 458 of file canvas.cc.
References config_, DrawGrid(), DrawOverlay(), yaze::gui::CanvasConfig::enable_grid, and RenderPersistentPopups().
Referenced by yaze::gui::CanvasFrame::operator=(), yaze::gui::CanvasFrame::~CanvasFrame(), and yaze::gui::ScopedCanvas::~ScopedCanvas().

| void yaze::gui::Canvas::End | ( | const CanvasFrameOptions & | options | ) |
Definition at line 504 of file canvas.cc.
References yaze::gui::CanvasFrameOptions::draw_grid, yaze::gui::CanvasFrameOptions::draw_overlay, DrawGrid(), DrawOverlay(), GetGridStep(), yaze::gui::CanvasFrameOptions::grid_step, yaze::gui::CanvasFrameOptions::render_popups, RenderPersistentPopups(), and yaze::gui::CanvasFrameOptions::use_child_window.

| void yaze::gui::Canvas::DrawBackground | ( | ImVec2 | canvas_size = ImVec2(0, 0) | ) |
Definition at line 547 of file canvas.cc.
References yaze::gui::ApplyScrollDelta(), yaze::gui::CalculateCanvasGeometry(), yaze::gui::CalculateMouseInCanvas(), canvas_id_, yaze::gui::CanvasGeometry::canvas_p0, canvas_p0_, yaze::gui::CanvasGeometry::canvas_p1, canvas_p1_, canvas_size(), yaze::gui::CanvasConfig::canvas_size, yaze::gui::CanvasGeometry::canvas_sz, canvas_sz_, config_, draw_list_, enable_context_menu_, yaze::gui::CanvasState::geometry, yaze::gui::CanvasConfig::is_draggable, yaze::gui::CanvasState::is_hovered, is_hovered_, yaze::gui::kMouseFlags, yaze::gui::CanvasState::mouse_pos_in_canvas, mouse_pos_in_canvas_, yaze::gui::RenderCanvasBackground(), yaze::gui::CanvasGeometry::scaled_size, yaze::gui::CanvasGeometry::scrolling, yaze::gui::CanvasConfig::scrolling, scrolling_, and state_.
Referenced by Begin(), Begin(), yaze::gui::BeginCanvas(), yaze::gui::BeginCanvas(), yaze::gui::BitmapCanvasPipeline(), yaze::editor::PixelEditorPanel::DrawCanvas(), yaze::editor::MessageEditor::DrawCurrentMessage(), yaze::editor::SpriteEditor::DrawCurrentSheets(), yaze::editor::ScreenEditor::DrawDungeonMapScreen(), yaze::editor::ScreenEditor::DrawDungeonMapsEditor(), yaze::editor::ScreenEditor::DrawOverworldMapEditor(), yaze::editor::anonymous_namespace{gfx_group_editor.cc}::DrawScaledSheet(), yaze::editor::SpriteEditor::DrawSpriteCanvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG1Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG2Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBlocksetSelector(), yaze::editor::ScreenEditor::DrawTitleScreenCompositeCanvas(), yaze::editor::SpriteEditor::DrawZSpriteOnCanvas(), yaze::gui::GraphicsBinCanvasPipeline(), yaze::gui::TileSelectorWidget::Render(), yaze::gui::TableCanvasPipeline(), UpdateColorPainter(), and UpdateInfoGrid().
| void yaze::gui::Canvas::DrawContextMenu | ( | ) |
Definition at line 602 of file canvas.cc.
References ApplyConfigSnapshot(), ApplyScaleSnapshot(), yaze::gui::CanvasConfig::auto_resize, bitmap_, canvas_id_, canvas_p0_, yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::content_size, context_id_, context_menu_, custom_step_, draggable_, yaze::gui::CanvasConfig::enable_context_menu, enable_context_menu_, yaze::gui::CanvasConfig::enable_custom_labels, enable_custom_labels_, yaze::gui::CanvasConfig::enable_grid, enable_grid_, yaze::gui::CanvasConfig::enable_hex_labels, enable_hex_tile_labels_, EnsureExtensions(), extensions_, yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::grid_step, yaze::gui::CanvasConfig::is_draggable, yaze::gui::CanvasContextMenu::kOpenAdvancedProperties, yaze::gui::CanvasContextMenu::kOpenScalingControls, yaze::gui::CanvasContextMenu::kResetView, yaze::gui::CanvasContextMenu::kSetGridStep, yaze::gui::CanvasContextMenu::kSetScale, yaze::gui::CanvasContextMenu::kToggleAutoResize, yaze::gui::CanvasContextMenu::kToggleContextMenu, yaze::gui::CanvasContextMenu::kToggleCustomLabels, yaze::gui::CanvasContextMenu::kToggleDraggable, yaze::gui::CanvasContextMenu::kToggleGrid, yaze::gui::CanvasContextMenu::kToggleHexLabels, yaze::gui::CanvasContextMenu::kZoomIn, yaze::gui::CanvasContextMenu::kZoomOut, yaze::gui::CanvasContextMenu::kZoomToFit, yaze::gfx::Bitmap::mutable_palette(), yaze::gui::CanvasConfig::on_config_changed, yaze::gui::CanvasConfig::on_scale_changed, ResetView(), rom_, yaze::gui::CanvasConfig::scrolling, scrolling_, SetGlobalScale(), SetZoomToFit(), ShowAdvancedCanvasProperties(), ShowScalingControls(), and usage_tracker_.
Referenced by Begin(), Begin(), yaze::gui::BeginCanvas(), yaze::gui::BeginCanvas(), yaze::gui::BitmapCanvasPipeline(), yaze::editor::MessageEditor::DrawCurrentMessage(), yaze::editor::SpriteEditor::DrawCurrentSheets(), yaze::editor::ScreenEditor::DrawDungeonMapsEditor(), yaze::editor::ScreenEditor::DrawOverworldMapEditor(), yaze::editor::anonymous_namespace{gfx_group_editor.cc}::DrawScaledSheet(), yaze::editor::SpriteEditor::DrawSpriteCanvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG1Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG2Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBlocksetSelector(), yaze::editor::ScreenEditor::DrawTitleScreenCompositeCanvas(), yaze::editor::SpriteEditor::DrawZSpriteOnCanvas(), yaze::gui::GraphicsBinCanvasPipeline(), yaze::gui::TileSelectorWidget::Render(), yaze::gui::TableCanvasPipeline(), and UpdateColorPainter().
| void yaze::gui::Canvas::AddContextMenuItem | ( | const gui::CanvasMenuItem & | item | ) |
Definition at line 753 of file canvas.cc.
References editor_menu_, yaze::gui::kEditorSpecific, yaze::gui::CanvasMenuSection::priority, yaze::gui::CanvasMenuDefinition::sections, and yaze::gui::CanvasMenuSection::separator_after.
Referenced by yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas(), and yaze::editor::MapPropertiesSystem::SetupCanvasContextMenu().
| void yaze::gui::Canvas::ClearContextMenuItems | ( | ) |
Definition at line 776 of file canvas.cc.
References editor_menu_, and yaze::gui::CanvasMenuDefinition::sections.
Referenced by yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas(), yaze::editor::OverworldEditor::DrawOverworldCanvas(), and yaze::editor::MapPropertiesSystem::SetupCanvasContextMenu().
|
inline |
Definition at line 298 of file canvas.h.
References editor_menu_.
Referenced by yaze::gui::CanvasContextMenu::Render().
|
inline |
Definition at line 299 of file canvas.h.
References editor_menu_.
|
inline |
Definition at line 300 of file canvas.h.
References context_menu_enabled_.
|
inline |
Definition at line 301 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::show_builtin_context_menu.
Referenced by yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas().
| void yaze::gui::Canvas::OpenPersistentPopup | ( | const std::string & | popup_id, |
| std::function< void()> | render_callback ) |
Definition at line 780 of file canvas.cc.
References yaze::gui::PopupRegistry::Open(), and popup_registry_.

| void yaze::gui::Canvas::ClosePersistentPopup | ( | const std::string & | popup_id | ) |
Definition at line 786 of file canvas.cc.
References yaze::gui::PopupRegistry::Close(), and popup_registry_.

| void yaze::gui::Canvas::RenderPersistentPopups | ( | ) |
Definition at line 791 of file canvas.cc.
References popup_registry_, and yaze::gui::PopupRegistry::RenderAll().
Referenced by yaze::gui::BitmapCanvasPipeline(), DrawOverlay(), End(), End(), yaze::gui::EndCanvas(), EndInTable(), yaze::gui::GraphicsBinCanvasPipeline(), and yaze::gui::TableCanvasPipeline().

|
inline |
Definition at line 312 of file canvas.h.
References popup_registry_.
Referenced by yaze::gui::CanvasContextMenu::Render().
|
inline |
Definition at line 313 of file canvas.h.
References popup_registry_.
| void yaze::gui::Canvas::ShowAdvancedCanvasProperties | ( | ) |
Definition at line 1728 of file canvas.cc.
References yaze::gui::CanvasConfig::auto_resize, bitmap_, canvas_id_, yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::content_size, custom_step_, draggable_, yaze::gui::CanvasConfig::enable_context_menu, enable_context_menu_, yaze::gui::CanvasConfig::enable_custom_labels, enable_custom_labels_, yaze::gui::CanvasConfig::enable_grid, enable_grid_, yaze::gui::CanvasConfig::enable_hex_labels, enable_hex_tile_labels_, EnsureExtensions(), GetMinimumSize(), GetPreferredSize(), yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::grid_step, yaze::gfx::Bitmap::height(), yaze::gui::CanvasConfig::is_draggable, yaze::gui::CanvasConfig::on_config_changed, yaze::gui::CanvasConfig::on_scale_changed, yaze::gui::CanvasConfig::scrolling, scrolling_, and yaze::gfx::Bitmap::width().
Referenced by DrawContextMenu(), and yaze::editor::Tile16Editor::UpdateTile16Edit().
| void yaze::gui::Canvas::ShowScalingControls | ( | ) |
Definition at line 1852 of file canvas.cc.
References yaze::gui::CanvasConfig::auto_resize, bitmap_, canvas_id_, yaze::gui::CanvasConfig::canvas_size, canvas_sz_, config_, yaze::gui::CanvasConfig::content_size, custom_step_, draggable_, yaze::gui::CanvasConfig::enable_context_menu, enable_context_menu_, yaze::gui::CanvasConfig::enable_custom_labels, enable_custom_labels_, yaze::gui::CanvasConfig::enable_grid, enable_grid_, yaze::gui::CanvasConfig::enable_hex_labels, enable_hex_tile_labels_, EnsureExtensions(), yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::grid_step, yaze::gfx::Bitmap::height(), yaze::gui::CanvasConfig::is_draggable, yaze::gui::CanvasConfig::on_config_changed, yaze::gui::CanvasConfig::on_scale_changed, yaze::gui::CanvasConfig::scrolling, scrolling_, and yaze::gfx::Bitmap::width().
Referenced by DrawContextMenu(), and yaze::editor::Tile16Editor::UpdateTile16Edit().

| void yaze::gui::Canvas::SetZoomToFit | ( | const gfx::Bitmap & | bitmap | ) |
Definition at line 796 of file canvas.cc.
References config_, yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gfx::Bitmap::height(), yaze::gfx::Bitmap::is_active(), scrolling_, and yaze::gfx::Bitmap::width().
Referenced by DrawContextMenu().

| void yaze::gui::Canvas::ResetView | ( | ) |
Definition at line 815 of file canvas.cc.
References config_, yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::scrolling, and scrolling_.
Referenced by DrawContextMenu().
| void yaze::gui::Canvas::ApplyConfigSnapshot | ( | const CanvasConfig & | snapshot | ) |
Definition at line 822 of file canvas.cc.
References yaze::gui::CanvasConfig::auto_resize, yaze::gui::CanvasConfig::canvas_size, config_, yaze::gui::CanvasConfig::content_size, yaze::gui::CanvasConfig::custom_canvas_size, custom_step_, draggable_, yaze::gui::CanvasConfig::enable_context_menu, enable_context_menu_, yaze::gui::CanvasConfig::enable_custom_labels, enable_custom_labels_, yaze::gui::CanvasConfig::enable_grid, enable_grid_, yaze::gui::CanvasConfig::enable_hex_labels, enable_hex_tile_labels_, yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::grid_step, yaze::gui::CanvasConfig::is_draggable, yaze::gui::CanvasConfig::scrolling, and scrolling_.
Referenced by DrawContextMenu().
| void yaze::gui::Canvas::ApplyScaleSnapshot | ( | const CanvasConfig & | snapshot | ) |
Definition at line 846 of file canvas.cc.
References config_, yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::scrolling, and scrolling_.
Referenced by DrawContextMenu().
|
inline |
|
inline |
|
inline |
Definition at line 326 of file canvas.h.
References selection_.
|
inline |
Definition at line 327 of file canvas.h.
References selection_.
| void yaze::gui::Canvas::InitializePaletteEditor | ( | Rom * | rom | ) |
Definition at line 283 of file canvas.cc.
References EnsureExtensions(), rom(), and rom_.
Referenced by yaze::editor::Tile16Editor::Initialize().

| void yaze::gui::Canvas::ShowPaletteEditor | ( | ) |
Definition at line 299 of file canvas.cc.
References bitmap_, EnsureExtensions(), and yaze::gfx::Bitmap::mutable_palette().
Referenced by yaze::editor::Tile16Editor::DrawPaletteSettings().

| void yaze::gui::Canvas::ShowColorAnalysis | ( | ) |
Definition at line 311 of file canvas.cc.
References bitmap_, and EnsureExtensions().
Referenced by yaze::editor::Tile16Editor::DrawPaletteSettings().

| bool yaze::gui::Canvas::ApplyROMPalette | ( | int | group_index, |
| int | palette_index ) |
Definition at line 321 of file canvas.cc.
References bitmap_, and extensions_.
Referenced by yaze::editor::Tile16Editor::DrawPaletteSettings().
| void yaze::gui::Canvas::ShowBppFormatSelector | ( | ) |
Definition at line 1988 of file canvas.cc.
References bitmap_, canvas_id_, EnsureExtensions(), and yaze::gfx::Bitmap::palette().

| void yaze::gui::Canvas::ShowBppAnalysis | ( | ) |
Definition at line 1999 of file canvas.cc.
References bitmap_, canvas_id_, EnsureExtensions(), and yaze::gfx::Bitmap::palette().

| void yaze::gui::Canvas::ShowBppConversionDialog | ( | ) |
Definition at line 2008 of file canvas.cc.
References bitmap_, canvas_id_, EnsureExtensions(), and yaze::gfx::Bitmap::palette().

| bool yaze::gui::Canvas::ConvertBitmapFormat | ( | gfx::BppFormat | target_format | ) |
Definition at line 2028 of file canvas.cc.
References bitmap_, yaze::gfx::BppFormatManager::ConvertFormat(), yaze::gfx::BppFormatManager::Get(), GetCurrentBppFormat(), yaze::gfx::Bitmap::height(), yaze::gfx::Bitmap::set_data(), yaze::gfx::Bitmap::UpdateTexture(), yaze::gfx::Bitmap::vector(), and yaze::gfx::Bitmap::width().
| gfx::BppFormat yaze::gui::Canvas::GetCurrentBppFormat | ( | ) | const |
Definition at line 2056 of file canvas.cc.
References bitmap_, yaze::gfx::BppFormatManager::DetectFormat(), yaze::gfx::BppFormatManager::Get(), yaze::gfx::Bitmap::height(), yaze::gfx::kBpp8, yaze::gfx::Bitmap::vector(), and yaze::gfx::Bitmap::width().
Referenced by ConvertBitmapFormat().
| void yaze::gui::Canvas::InitializeEnhancedComponents | ( | ) |
Definition at line 216 of file canvas.cc.
References canvas_id_, config_, context_menu_, yaze::gui::CanvasConfig::enable_metrics, performance_integration_, and usage_tracker_.
Referenced by InitializeDefaults().
| void yaze::gui::Canvas::SetUsageMode | ( | CanvasUsage | usage | ) |
Definition at line 237 of file canvas.cc.
References config_, context_menu_, yaze::gui::CanvasConfig::usage_mode, and usage_tracker_.
Referenced by yaze::editor::MapPropertiesSystem::DrawCanvasToolbar(), yaze::editor::OverworldEditor::HandleEntityEditingShortcuts(), and yaze::editor::OverworldEditor::HandleKeyboardShortcuts().
|
inline |
Definition at line 345 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::usage_mode.
Referenced by RecordCanvasOperation().
| void yaze::gui::Canvas::RecordCanvasOperation | ( | const std::string & | operation_name, |
| double | time_ms ) |
Definition at line 247 of file canvas.cc.
References performance_integration_, usage_mode(), and usage_tracker_.

| void yaze::gui::Canvas::ShowPerformanceUI | ( | ) |
Definition at line 258 of file canvas.cc.
References performance_integration_.
| void yaze::gui::Canvas::ShowUsageReport | ( | ) |
Definition at line 264 of file canvas.cc.
References usage_tracker_.
|
inline |
Definition at line 352 of file canvas.h.
References interaction_handler_.
|
inline |
Definition at line 355 of file canvas.h.
References interaction_handler_.
| CanvasAutomationAPI * yaze::gui::Canvas::GetAutomationAPI | ( | ) |
Definition at line 2065 of file canvas.cc.
References EnsureExtensions().
Referenced by yaze::editor::OverworldEditor::SetupCanvasAutomation().

| void yaze::gui::Canvas::InitializeDefaults | ( | ) |
Definition at line 159 of file canvas.cc.
References canvas_id_, yaze::gui::CanvasConfig::canvas_size, yaze::gui::CanvasConfig::clamp_rect_to_local_maps, yaze::gui::CanvasSelection::Clear(), config_, yaze::gui::CanvasConfig::custom_canvas_size, custom_canvas_size_, custom_step_, draggable_, yaze::gui::CanvasConfig::enable_context_menu, enable_context_menu_, yaze::gui::CanvasConfig::enable_custom_labels, enable_custom_labels_, yaze::gui::CanvasConfig::enable_grid, enable_grid_, yaze::gui::CanvasConfig::enable_hex_labels, enable_hex_tile_labels_, yaze::gui::CanvasConfig::global_scale, global_scale_, yaze::gui::CanvasConfig::grid_step, yaze::gui::CanvasInteractionHandler::Initialize(), InitializeEnhancedComponents(), interaction_handler_, yaze::gui::CanvasConfig::is_draggable, yaze::gui::CanvasSelection::select_rect_active, select_rect_active_, yaze::gui::CanvasSelection::selected_tile_pos, selected_tile_pos_, and selection_.
Referenced by Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), and yaze::editor::Tile16Editor::Initialize().

| void yaze::gui::Canvas::Cleanup | ( | ) |
Definition at line 196 of file canvas.cc.
References yaze::gui::CanvasSelection::Clear(), context_menu_, extensions_, performance_integration_, selection_, and usage_tracker_.

| ImVec2 yaze::gui::Canvas::GetMinimumSize | ( | ) | const |
Definition at line 330 of file canvas.cc.
References yaze::gui::CanvasUtils::CalculateMinimumCanvasSize(), config_, yaze::gui::CanvasConfig::content_size, and yaze::gui::CanvasConfig::global_scale.
Referenced by ShowAdvancedCanvasProperties().

| ImVec2 yaze::gui::Canvas::GetPreferredSize | ( | ) | const |
Definition at line 335 of file canvas.cc.
References yaze::gui::CanvasUtils::CalculatePreferredCanvasSize(), config_, yaze::gui::CanvasConfig::content_size, and yaze::gui::CanvasConfig::global_scale.
Referenced by Begin(), yaze::gui::BeginCanvas(), yaze::gui::BeginCanvas(), BeginInTable(), BeginTableCanvas(), ReserveTableSpace(), and ShowAdvancedCanvasProperties().

|
inline |
Definition at line 369 of file canvas.h.
References yaze::gui::CanvasConfig::canvas_size, and config_.
Referenced by Begin(), yaze::gui::BeginCanvas(), and yaze::gui::BeginCanvas().
|
inline |
Definition at line 370 of file canvas.h.
References yaze::gui::CanvasConfig::auto_resize, and config_.
Referenced by yaze::editor::Tile16Editor::Initialize(), and yaze::gui::TableCanvasPipeline().
|
inline |
Definition at line 371 of file canvas.h.
References yaze::gui::CanvasConfig::auto_resize, and config_.
Referenced by Begin(), yaze::gui::BeginCanvas(), and yaze::gui::BeginCanvas().
| void yaze::gui::Canvas::ReserveTableSpace | ( | const std::string & | label = "" | ) |
Definition at line 340 of file canvas.cc.
References yaze::gui::CanvasConfig::auto_resize, yaze::gui::CanvasConfig::canvas_size, config_, GetPreferredSize(), and yaze::gui::CanvasUtils::ReserveCanvasSpace().

| bool yaze::gui::Canvas::BeginTableCanvas | ( | const std::string & | label = "" | ) |
Definition at line 345 of file canvas.cc.
References yaze::gui::CanvasConfig::auto_resize, canvas_id_, yaze::gui::CanvasConfig::canvas_size, config_, GetPreferredSize(), and yaze::gui::CanvasUtils::SetNextCanvasSize().
Referenced by yaze::gui::TableCanvasPipeline().

| void yaze::gui::Canvas::EndTableCanvas | ( | ) |
Definition at line 368 of file canvas.cc.
Referenced by yaze::gui::TableCanvasPipeline().
| CanvasRuntime yaze::gui::Canvas::BeginInTable | ( | const std::string & | label, |
| const CanvasFrameOptions & | options ) |
Begin canvas in table cell with frame options (modern API) Returns CanvasRuntime for stateless helper usage. Handles child sizing, scrollbars, and table integration.
Definition at line 372 of file canvas.cc.
References yaze::gui::CanvasConfig::auto_resize, Begin(), BuildCurrentRuntime(), canvas_id_, yaze::gui::CanvasFrameOptions::canvas_size, yaze::gui::CanvasConfig::canvas_size, config_, GetPreferredSize(), yaze::gui::CanvasRuntime::grid_step, yaze::gui::CanvasFrameOptions::grid_step, yaze::gui::CanvasUtils::SetNextCanvasSize(), and yaze::gui::CanvasFrameOptions::show_scrollbar.

| void yaze::gui::Canvas::EndInTable | ( | CanvasRuntime & | runtime, |
| const CanvasFrameOptions & | options ) |
Definition at line 408 of file canvas.cc.
References config_, yaze::gui::CanvasFrameOptions::draw_grid, yaze::gui::CanvasFrameOptions::draw_overlay, DrawGrid(), DrawOverlay(), yaze::gui::CanvasFrameOptions::grid_step, yaze::gui::CanvasConfig::grid_step, yaze::gui::CanvasFrameOptions::render_popups, and RenderPersistentPopups().

| bool yaze::gui::Canvas::HasValidSelection | ( | ) | const |
Definition at line 430 of file canvas.cc.
References points_.
Referenced by GetLastClickPosition(), WasClicked(), and WasDoubleClicked().
| bool yaze::gui::Canvas::WasClicked | ( | ImGuiMouseButton | button = ImGuiMouseButton_Left | ) | const |
Definition at line 434 of file canvas.cc.
References HasValidSelection().

| bool yaze::gui::Canvas::WasDoubleClicked | ( | ImGuiMouseButton | button = ImGuiMouseButton_Left | ) | const |
Definition at line 438 of file canvas.cc.
References HasValidSelection().

| ImVec2 yaze::gui::Canvas::GetLastClickPosition | ( | ) | const |
Definition at line 443 of file canvas.cc.
References HasValidSelection(), and points_.

| bool yaze::gui::Canvas::DrawTilePainter | ( | const Bitmap & | bitmap, |
| int | size, | ||
| float | scale = 1.0f ) |
Definition at line 852 of file canvas.cc.
References canvas_p0_, draw_list_, drawn_tile_pos_, yaze::gfx::Bitmap::is_active(), is_hovered_, mouse_pos_in_canvas_, points_, scrolling_, and yaze::gfx::Bitmap::texture().
Referenced by yaze::editor::ScreenEditor::DrawDungeonMapsRoomGfx(), and yaze::editor::Tile16Editor::UpdateTile16Edit().

| bool yaze::gui::Canvas::DrawSolidTilePainter | ( | const ImVec4 & | color, |
| int | size ) |
Definition at line 936 of file canvas.cc.
References canvas_p0_, canvas_sz_, draw_list_, drawn_tile_pos_, global_scale_, is_hovered_, mouse_pos_in_canvas_, points_, and scrolling_.
Referenced by UpdateColorPainter().
| void yaze::gui::Canvas::DrawTileOnBitmap | ( | int | tile_size, |
| gfx::Bitmap * | bitmap, | ||
| ImVec4 | color ) |
Definition at line 990 of file canvas.cc.
References drawn_tile_pos_, global_scale_, yaze::gfx::Bitmap::width(), and yaze::gfx::Bitmap::WriteColor().

| void yaze::gui::Canvas::DrawOutline | ( | int | x, |
| int | y, | ||
| int | w, | ||
| int | h ) |
Definition at line 1139 of file canvas.cc.
References canvas_p0_, draw_list_, yaze::gui::CanvasUtils::DrawCanvasOutline(), and scrolling_.
Referenced by yaze::editor::OverworldEditor::CheckForCurrentMap().

| void yaze::gui::Canvas::DrawOutlineWithColor | ( | int | x, |
| int | y, | ||
| int | w, | ||
| int | h, | ||
| ImVec4 | color ) |
Definition at line 1144 of file canvas.cc.
References canvas_p0_, draw_list_, yaze::gui::CanvasUtils::DrawCanvasOutlineWithColor(), and scrolling_.
Referenced by yaze::editor::ScreenEditor::DrawDungeonMapScreen(), and yaze::gui::TileSelectorWidget::DrawHighlight().

| void yaze::gui::Canvas::DrawOutlineWithColor | ( | int | x, |
| int | y, | ||
| int | w, | ||
| int | h, | ||
| uint32_t | color ) |
Definition at line 1149 of file canvas.cc.
References canvas_p0_, draw_list_, yaze::gui::CanvasUtils::DrawCanvasOutline(), and scrolling_.

| void yaze::gui::Canvas::DrawRect | ( | int | x, |
| int | y, | ||
| int | w, | ||
| int | h, | ||
| ImVec4 | color ) |
Definition at line 1341 of file canvas.cc.
References canvas_p0_, config_, draw_list_, yaze::gui::CanvasUtils::DrawCanvasRect(), yaze::gui::CanvasConfig::global_scale, and scrolling_.
Referenced by yaze::editor::OverworldEntityRenderer::DrawDiggableTileHighlights(), yaze::editor::OverworldEntityRenderer::DrawEntrances(), yaze::editor::OverworldEntityRenderer::DrawExits(), yaze::editor::OverworldEntityRenderer::DrawItems(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::editor::DungeonObjectSelector::RenderObjectPrimitive(), and yaze::editor::SpriteEditor::RenderZSpriteFrame().

| void yaze::gui::Canvas::DrawText | ( | const std::string & | text, |
| int | x, | ||
| int | y ) |
Definition at line 1346 of file canvas.cc.
References canvas_p0_, config_, draw_list_, yaze::gui::CanvasUtils::DrawCanvasText(), yaze::gui::CanvasConfig::global_scale, and scrolling_.
Referenced by yaze::editor::ScreenEditor::DrawDungeonMapScreen(), yaze::editor::OverworldEntityRenderer::DrawEntrances(), yaze::editor::OverworldEntityRenderer::DrawExits(), yaze::editor::OverworldEntityRenderer::DrawItems(), yaze::editor::OverworldEntityRenderer::DrawSprites(), and yaze::editor::DungeonObjectSelector::RenderObjectPrimitive().

| void yaze::gui::Canvas::DrawGridLines | ( | float | grid_step | ) |
Definition at line 1351 of file canvas.cc.
References canvas_p0_, canvas_p1_, config_, draw_list_, yaze::gui::CanvasUtils::DrawCanvasGridLines(), yaze::gui::CanvasConfig::global_scale, and scrolling_.
Referenced by DrawInfoGrid().

| void yaze::gui::Canvas::DrawInfoGrid | ( | float | grid_step = 64.0f, |
| int | tile_id_offset = 8, | ||
| int | label_id = 0 ) |
Definition at line 1356 of file canvas.cc.
References canvas_p0_, canvas_p1_, canvas_sz_, custom_step_, draw_list_, DrawCustomHighlight(), DrawGridLines(), enable_custom_labels_, enable_grid_, global_scale_, yaze::gui::kWhiteColor, labels_, and scrolling_.
Referenced by UpdateInfoGrid().

| void yaze::gui::Canvas::DrawLayeredElements | ( | ) |
Definition at line 1445 of file canvas.cc.
References draw_list().

|
inline |
Definition at line 412 of file canvas.h.
References canvas_sz_, config_, custom_step_, yaze::gui::CanvasConfig::global_scale, yaze::gui::CanvasConfig::grid_step, and mouse_pos_in_canvas_.
Referenced by yaze::editor::ScreenEditor::DrawDungeonMapsEditor().
| void yaze::gui::Canvas::DrawCustomHighlight | ( | float | grid_step | ) |
Definition at line 1393 of file canvas.cc.
References canvas_p0_, draw_list_, yaze::gui::CanvasUtils::DrawCustomHighlight(), highlight_tile_id, and scrolling_.
Referenced by DrawInfoGrid().

|
inline |
Definition at line 433 of file canvas.h.
References is_hovered_.
Referenced by yaze::gui::BeginCanvas(), yaze::editor::DungeonObjectInteraction::DrawDoorGhostPreview(), yaze::editor::ScreenEditor::DrawDungeonMapsRoomGfx(), yaze::editor::DungeonObjectInteraction::DrawGhostPreview(), yaze::editor::DungeonObjectInteraction::DrawHoverHighlight(), yaze::editor::DungeonObjectInteraction::DrawItemGhostPreview(), yaze::editor::DungeonObjectInteraction::DrawObjectSelectRect(), yaze::editor::DungeonObjectInteraction::DrawSelectionHighlights(), yaze::editor::DungeonObjectInteraction::DrawSpriteGhostPreview(), yaze::editor::DungeonObjectInteraction::HandleCanvasMouseInput(), yaze::editor::DungeonObjectInteraction::TrySelectEntityAtCursor(), and yaze::editor::Tile16Editor::UpdateTile16Edit().
|
inline |
Definition at line 434 of file canvas.h.
References global_scale_.
Referenced by yaze::editor::ScreenEditor::DrawInventoryToolset().
|
inline |
Definition at line 435 of file canvas.h.
References global_scale_.
Referenced by yaze::editor::ScreenEditor::DrawInventoryToolset().
|
inline |
Definition at line 439 of file canvas.h.
References points_.
Referenced by yaze::editor::ScreenEditor::DrawDungeonMapScreen(), yaze::editor::ScreenEditor::DrawDungeonMapsRoomGfx(), yaze::editor::ScreenEditor::DrawOverworldMapEditor(), yaze::editor::ScreenEditor::DrawTitleScreenBG1Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG2Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBlocksetSelector(), yaze::editor::ScreenEditor::DrawTitleScreenCompositeCanvas(), and yaze::editor::OverworldEditor::Paste().
|
inline |
Definition at line 440 of file canvas.h.
References points_.
Referenced by yaze::editor::ScreenEditor::DrawDungeonMapsRoomGfx(), and yaze::gui::CanvasAutomationAPI::SetTileAt().
|
inline |
|
inline |
Definition at line 442 of file canvas.h.
References draw_list_.
Referenced by yaze::gui::BeginCanvas(), yaze::editor::PixelEditorPanel::DrawBrushPreview(), yaze::editor::PixelEditorPanel::DrawCanvas(), yaze::editor::PixelEditorPanel::DrawCursorCrosshair(), yaze::editor::DungeonObjectInteraction::DrawItemGhostPreview(), DrawLayeredElements(), yaze::editor::MapPropertiesSystem::DrawOverlayPreviewOnMap(), yaze::editor::DungeonObjectInteraction::DrawSpriteGhostPreview(), yaze::editor::PixelEditorPanel::DrawTransparencyGrid(), and yaze::gui::GraphicsBinCanvasPipeline().
|
inline |
Definition at line 443 of file canvas.h.
References canvas_p0_.
Referenced by yaze::gui::BeginCanvas(), yaze::editor::PixelEditorPanel::DrawCanvas(), yaze::editor::PixelEditorPanel::DrawCursorCrosshair(), yaze::editor::DungeonObjectInteraction::DrawDoorGhostPreview(), yaze::editor::DungeonObjectInteraction::DrawDoorSnapIndicators(), yaze::editor::DungeonObjectInteraction::DrawDragPreview(), yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas(), yaze::editor::DungeonObjectInteraction::DrawEntitySelectionHighlights(), yaze::editor::DungeonObjectInteraction::DrawGhostPreview(), yaze::editor::DungeonObjectInteraction::DrawHoverHighlight(), yaze::editor::DungeonObjectInteraction::DrawItemGhostPreview(), yaze::editor::OverworldEntityRenderer::DrawItems(), yaze::editor::DungeonObjectInteraction::DrawObjectSelectRect(), yaze::editor::OverworldEditor::DrawOverworldMaps(), yaze::editor::ObjectSelection::DrawRectangleSelectionBox(), yaze::editor::DungeonObjectInteraction::DrawSelectionHighlights(), yaze::editor::ObjectSelection::DrawSelectionHighlights(), yaze::editor::DungeonObjectInteraction::DrawSpriteGhostPreview(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::editor::PixelEditorPanel::DrawTransparencyGrid(), yaze::editor::BaseEntityHandler::GetCanvasZeroPoint(), yaze::editor::DungeonObjectInteraction::GetHoveredObjectIndex(), yaze::gui::GraphicsBinCanvasPipeline(), yaze::editor::DungeonObjectInteraction::HandleCanvasMouseInput(), yaze::editor::DungeonObjectInteraction::HandleEntityDrag(), yaze::editor::DungeonObjectInteraction::HandlePasteObjects(), yaze::editor::PixelEditorPanel::PixelToScreen(), yaze::gui::TileSelectorWidget::ResolveTileAtCursor(), yaze::editor::PixelEditorPanel::ScreenToPixel(), yaze::editor::DungeonObjectInteraction::TrySelectEntityAtCursor(), and yaze::editor::Tile16Editor::UpdateTile16Edit().
| ImVec2 yaze::gui::Canvas::ToCanvasPos | ( | ImVec2 | local | ) | const |
|
inline |
Definition at line 445 of file canvas.h.
References scrolling_.
Referenced by yaze::gui::BeginCanvas(), yaze::editor::OverworldEntityRenderer::DrawItems(), yaze::editor::OverworldEditor::DrawOverworldMaps(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::gui::CanvasAutomationAPI::GetVisibleRegion(), yaze::gui::TileSelectorWidget::ResolveTileAtCursor(), and yaze::gui::CanvasAutomationAPI::ScrollToTile().
|
inline |
Definition at line 446 of file canvas.h.
References config_, yaze::gui::CanvasConfig::scrolling, and scrolling_.
Referenced by yaze::gui::CanvasAutomationAPI::CenterOn(), yaze::editor::OverworldEditor::DrawOverworldCanvas(), yaze::gui::CanvasAutomationAPI::ScrollToTile(), and yaze::editor::MapPropertiesSystem::SetupCanvasContextMenu().
|
inline |
Definition at line 450 of file canvas.h.
References drawn_tile_pos_.
Referenced by yaze::editor::OverworldEditor::DrawOverworldEdits(), yaze::editor::OverworldEditor::DrawScratchSpaceEdits(), yaze::editor::OverworldEditor::DrawScratchSpacePattern(), yaze::editor::OverworldEditor::HandleMapInteraction(), and yaze::editor::OverworldEditor::Paste().
|
inline |
Definition at line 451 of file canvas.h.
References canvas_sz_.
Referenced by Begin(), yaze::gui::BeginCanvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), yaze::gui::CanvasAutomationAPI::CenterOn(), DrawBackground(), yaze::editor::MessageEditor::DrawCurrentMessage(), yaze::editor::PixelEditorPanel::DrawCursorCrosshair(), yaze::gui::CanvasAutomationAPI::GetDimensions(), yaze::gui::CanvasAutomationAPI::GetVisibleRegion(), Init(), yaze::editor::DungeonObjectInteraction::IsWithinCanvasBounds(), yaze::gui::CanvasAutomationAPI::ScrollToTile(), and SetCanvasSize().
|
inline |
Definition at line 453 of file canvas.h.
References config_, yaze::gui::CanvasConfig::global_scale, and global_scale_.
Referenced by yaze::editor::MapPropertiesSystem::DrawViewPopup(), yaze::editor::OverworldEditor::ResetOverworldView(), yaze::editor::MapPropertiesSystem::SetupCanvasContextMenu(), yaze::gui::CanvasAutomationAPI::SetZoom(), yaze::editor::OverworldEditor::ZoomIn(), and yaze::editor::OverworldEditor::ZoomOut().
|
inline |
Definition at line 457 of file canvas.h.
References draggable_.
Referenced by yaze::editor::Tile16Editor::UpdateTile16Edit().
|
inline |
Definition at line 460 of file canvas.h.
References select_rect_active_.
|
inline |
Definition at line 461 of file canvas.h.
References selected_tiles_.
|
inline |
Definition at line 464 of file canvas.h.
References selected_tile_pos_.
|
inline |
Definition at line 465 of file canvas.h.
References selected_tile_pos_.
|
inline |
Definition at line 469 of file canvas.h.
References canvas_size(), yaze::gui::CanvasConfig::canvas_size, config_, and yaze::gui::CanvasConfig::custom_canvas_size.
Referenced by yaze::editor::LinkSpritePanel::DrawPreviewCanvas(), yaze::editor::LinkSpritePanel::Initialize(), yaze::editor::Tile16Editor::LoadTile8(), yaze::editor::ScreenEditor::ScreenEditor(), and yaze::gui::TableCanvasPipeline().

|
inline |
Definition at line 473 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::global_scale.
Referenced by yaze::gui::BeginCanvas(), yaze::gui::TableCanvasPipeline(), and yaze::editor::Tile16Editor::UpdateTile16Edit().
|
inline |
Definition at line 475 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::global_scale.
Referenced by DrawContextMenu().
|
inline |
Definition at line 476 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::enable_custom_labels.
|
inline |
Definition at line 477 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::grid_step.
Referenced by yaze::gui::BeginCanvas(), End(), and yaze::gui::EndCanvas().
|
inline |
Definition at line 480 of file canvas.h.
References yaze::gui::CanvasConfig::clamp_rect_to_local_maps, and config_.
|
inline |
Definition at line 483 of file canvas.h.
References yaze::gui::CanvasConfig::clamp_rect_to_local_maps, and config_.
|
inline |
Definition at line 486 of file canvas.h.
References yaze::gui::CanvasConfig::canvas_size, and config_.
|
inline |
Definition at line 487 of file canvas.h.
References yaze::gui::CanvasConfig::canvas_size, and config_.
|
inline |
Definition at line 490 of file canvas.h.
References select_rect_active_.
Referenced by yaze::editor::OverworldEditor::CheckForOverworldEdits(), yaze::editor::OverworldEditor::CheckForSelectRectangle(), yaze::editor::OverworldEditor::Copy(), yaze::editor::OverworldEditor::DrawOverworldCanvas(), yaze::editor::OverworldEditor::DrawScratchSpace(), and yaze::editor::OverworldEditor::SaveCurrentSelectionToScratch().
|
inline |
Definition at line 491 of file canvas.h.
References selected_tiles_.
Referenced by yaze::editor::OverworldEditor::CheckForSelectRectangle(), yaze::editor::OverworldEditor::DrawOverworldCanvas(), yaze::editor::OverworldEditor::DrawScratchSpace(), and yaze::editor::OverworldEditor::SaveCurrentSelectionToScratch().
|
inline |
Definition at line 492 of file canvas.h.
References selected_tile_pos_.
Referenced by yaze::editor::OverworldEditor::CheckForSelectRectangle(), and yaze::editor::OverworldEditor::Paste().
|
inline |
Definition at line 493 of file canvas.h.
References selected_tile_pos_.
Referenced by yaze::editor::OverworldEditor::CheckForSelectRectangle().
|
inline |
Definition at line 494 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::global_scale.
Referenced by Canvas(), Canvas(), yaze::gui::CanvasAutomationAPI::CanvasToTile(), yaze::editor::OverworldEditor::CenterOverworldView(), yaze::editor::OverworldEditor::CheckForCurrentMap(), yaze::editor::OverworldEditor::CheckForSelectRectangle(), yaze::editor::DungeonObjectInteraction::DrawDoorGhostPreview(), yaze::editor::DungeonObjectInteraction::DrawDoorSnapIndicators(), yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas(), yaze::editor::DungeonObjectInteraction::DrawEntitySelectionHighlights(), yaze::editor::OverworldEntityRenderer::DrawEntrances(), yaze::editor::OverworldEntityRenderer::DrawExits(), yaze::editor::DungeonObjectInteraction::DrawGhostPreview(), yaze::editor::DungeonObjectInteraction::DrawHoverHighlight(), yaze::editor::DungeonObjectInteraction::DrawItemGhostPreview(), yaze::editor::OverworldEntityRenderer::DrawItems(), yaze::editor::MapPropertiesSystem::DrawOverlayPreviewOnMap(), yaze::editor::OverworldEditor::DrawOverworldEdits(), yaze::editor::OverworldEditor::DrawOverworldMaps(), yaze::editor::ObjectSelection::DrawRectangleSelectionBox(), yaze::editor::ObjectSelection::DrawSelectionHighlights(), yaze::editor::DungeonObjectInteraction::DrawSpriteGhostPreview(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::editor::MapPropertiesSystem::DrawViewPopup(), yaze::editor::BaseEntityHandler::GetCanvasScale(), yaze::gui::CanvasAutomationAPI::GetDimensions(), yaze::editor::DungeonObjectInteraction::GetEntityAtPosition(), yaze::gui::CanvasAutomationAPI::GetVisibleRegion(), yaze::gui::CanvasAutomationAPI::GetZoom(), yaze::editor::OverworldEditor::HandleMapInteraction(), yaze::editor::DungeonObjectInteraction::IsWithinCanvasBounds(), yaze::editor::OverworldEditor::Paste(), yaze::editor::DungeonObjectInteraction::PlaceItemAtPosition(), yaze::editor::DungeonObjectInteraction::PlaceSpriteAtPosition(), yaze::editor::MapPropertiesSystem::SetupCanvasContextMenu(), yaze::gui::CanvasAutomationAPI::TileToCanvas(), yaze::editor::OverworldEditor::ZoomIn(), and yaze::editor::OverworldEditor::ZoomOut().
|
inline |
Definition at line 495 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::enable_custom_labels.
Referenced by yaze::editor::Tile16Editor::DrawContextMenu(), yaze::editor::Tile16Editor::Initialize(), and yaze::editor::Tile16Editor::Update().
|
inline |
Definition at line 496 of file canvas.h.
References config_, and yaze::gui::CanvasConfig::grid_step.
Referenced by yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas().
|
inline |
Definition at line 497 of file canvas.h.
References yaze::gui::CanvasConfig::canvas_size, and config_.
Referenced by yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas(), and yaze::editor::DungeonObjectSelector::DrawRoomGraphics().
|
inline |
Definition at line 498 of file canvas.h.
References yaze::gui::CanvasConfig::canvas_size, and config_.
Referenced by yaze::editor::DungeonCanvasViewer::DrawDungeonCanvas(), and yaze::editor::DungeonObjectSelector::DrawRoomGraphics().
|
inline |
Definition at line 501 of file canvas.h.
References canvas_id_.
Referenced by Begin(), yaze::gui::BeginCanvas(), and yaze::gui::BeginCanvas().
| void yaze::gui::Canvas::DrawBitmap | ( | Bitmap & | bitmap, |
| int | border_offset, | ||
| float | scale ) |
Definition at line 1075 of file canvas.cc.
References bitmap_, config_, yaze::gui::CanvasConfig::content_size, draw_list_, yaze::gui::CanvasState::geometry, yaze::gfx::Bitmap::height(), yaze::gfx::Bitmap::is_active(), yaze::gui::RenderBitmapOnCanvas(), state_, and yaze::gfx::Bitmap::width().
Referenced by yaze::gui::BitmapCanvasPipeline(), yaze::editor::OverworldEditor::DrawAreaGraphics(), yaze::editor::MessageEditor::DrawCurrentMessage(), yaze::editor::SpriteEditor::DrawCurrentSheets(), yaze::editor::ScreenEditor::DrawDungeonMapScreen(), yaze::editor::MessageEditor::DrawFontAtlas(), yaze::editor::ScreenEditor::DrawOverworldMapEditor(), yaze::editor::OverworldEditor::DrawOverworldMaps(), yaze::editor::anonymous_namespace{gfx_group_editor.cc}::DrawScaledSheet(), yaze::editor::OverworldEditor::DrawScratchSpace(), yaze::editor::SpriteEditor::DrawSpriteCanvas(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::editor::OverworldEntityRenderer::DrawSprites(), yaze::editor::ScreenEditor::DrawTitleScreenBG1Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG2Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBlocksetSelector(), yaze::editor::ScreenEditor::DrawTitleScreenCompositeCanvas(), yaze::gui::TileSelectorWidget::Render(), yaze::editor::SpriteEditor::RenderZSpriteFrame(), yaze::gui::TableCanvasPipeline(), UpdateColorPainter(), and yaze::editor::Tile16Editor::UpdateTile16Edit().

| void yaze::gui::Canvas::DrawBitmap | ( | Bitmap & | bitmap, |
| int | x_offset, | ||
| int | y_offset, | ||
| float | scale = 1.0f, | ||
| int | alpha = 255 ) |
Definition at line 1089 of file canvas.cc.
References bitmap_, config_, yaze::gui::CanvasConfig::content_size, draw_list_, yaze::gui::CanvasState::geometry, yaze::gfx::Bitmap::height(), yaze::gfx::Bitmap::is_active(), yaze::gui::RenderBitmapOnCanvas(), state_, and yaze::gfx::Bitmap::width().

| void yaze::gui::Canvas::DrawBitmap | ( | Bitmap & | bitmap, |
| ImVec2 | dest_pos, | ||
| ImVec2 | dest_size, | ||
| ImVec2 | src_pos, | ||
| ImVec2 | src_size ) |
Definition at line 1106 of file canvas.cc.
References bitmap_, config_, yaze::gui::CanvasConfig::content_size, draw_list_, yaze::gui::CanvasState::geometry, yaze::gfx::Bitmap::height(), yaze::gfx::Bitmap::is_active(), yaze::gui::RenderBitmapOnCanvas(), state_, and yaze::gfx::Bitmap::width().

| void yaze::gui::Canvas::DrawBitmapTable | ( | const BitmapTable & | gfx_bin | ) |
Definition at line 1122 of file canvas.cc.
References canvas_p0_, and draw_list_.
Referenced by yaze::editor::ScreenEditor::DrawDungeonMapsEditor().
| void yaze::gui::Canvas::DrawBitmapGroup | ( | std::vector< int > & | group, |
| gfx::Tilemap & | tilemap, | ||
| int | tile_size, | ||
| float | scale = 1.0f, | ||
| int | local_map_size = 0x200, | ||
| ImVec2 | total_map_size = ImVec2(0x1000, 0x1000) ) |
Draw group of bitmaps for multi-tile selection preview.
| group | Vector of tile IDs to draw |
| tilemap | Tilemap containing the tiles |
| tile_size | Size of each tile (default 16) |
| scale | Rendering scale (default 1.0) |
| local_map_size | Size of local map in pixels (default 512 for standard maps) |
| total_map_size | Total map size for boundary clamping (default 4096x4096) |
Definition at line 1154 of file canvas.cc.
References yaze::gfx::Tilemap::atlas, canvas_p0_, yaze::gui::CanvasConfig::clamp_rect_to_local_maps, config_, draw_list_, yaze::gui::CanvasConfig::global_scale, yaze::gfx::Bitmap::height(), yaze::gfx::Bitmap::is_active(), yaze::gfx::Tilemap::map_size, scrolling_, select_rect_active_, selected_points_, yaze::gfx::Bitmap::texture(), yaze::gfx::Tilemap::tile_size, yaze::gfx::Bitmap::width(), yaze::gfx::Pair::x, and yaze::gfx::Pair::y.
Referenced by yaze::editor::OverworldEditor::CheckForSelectRectangle().

| void yaze::gui::Canvas::DrawBitmapPreview | ( | Bitmap & | bitmap, |
| const BitmapPreviewOptions & | options ) |
| bool yaze::gui::Canvas::DrawTilemapPainter | ( | gfx::Tilemap & | tilemap, |
| int | current_tile ) |
Definition at line 898 of file canvas.cc.
References BuildCurrentRuntime(), canvas_p0_, drawn_tile_pos_, yaze::gui::DrawTilemapPainter(), global_scale_, is_hovered_, mouse_pos_in_canvas_, points_, scrolling_, yaze::gfx::Tilemap::tile_size, and yaze::gfx::Pair::x.
Referenced by yaze::editor::OverworldEditor::CheckForOverworldEdits().

| void yaze::gui::Canvas::DrawSelectRect | ( | int | current_map, |
| int | tile_size = 0x10, | ||
| float | scale = 1.0f ) |
Definition at line 1041 of file canvas.cc.
References BuildCurrentRuntime(), yaze::gui::DrawSelectRect(), is_hovered_, yaze::gui::CanvasRuntime::scale, yaze::gui::CanvasSelection::select_rect_active, select_rect_active_, yaze::gui::CanvasSelection::selected_points, selected_points_, yaze::gui::CanvasSelection::selected_tile_pos, selected_tile_pos_, yaze::gui::CanvasSelection::selected_tiles, and selected_tiles_.
Referenced by yaze::editor::OverworldEditor::CheckForSelectRectangle().

| bool yaze::gui::Canvas::DrawTileSelector | ( | int | size, |
| int | size_y = 0 ) |
Definition at line 1011 of file canvas.cc.
References BuildCurrentRuntime(), canvas_p0_, yaze::gui::DrawTileSelector(), is_hovered_, mouse_pos_in_canvas_, points_, and scrolling_.
Referenced by yaze::gui::BitmapCanvasPipeline(), yaze::editor::DungeonRoomGraphicsPanel::Draw(), yaze::editor::OverworldEditor::DrawAreaGraphics(), yaze::editor::SpriteEditor::DrawCurrentSheets(), yaze::editor::ScreenEditor::DrawDungeonMapScreen(), yaze::editor::ScreenEditor::DrawDungeonMapsEditor(), yaze::editor::MessageEditor::DrawFontAtlas(), yaze::editor::ScreenEditor::DrawOverworldMapEditor(), yaze::editor::DungeonObjectSelector::DrawRoomGraphics(), yaze::editor::OverworldEditor::DrawScratchSpace(), yaze::editor::ScreenEditor::DrawTitleScreenBG1Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG2Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBlocksetSelector(), yaze::editor::ScreenEditor::DrawTitleScreenCompositeCanvas(), yaze::gui::GraphicsBinCanvasPipeline(), and yaze::editor::Tile16Editor::UpdateTile16Edit().

| void yaze::gui::Canvas::DrawGrid | ( | float | grid_step = 64.0f, |
| int | tile_id_offset = 8 ) |
Definition at line 1398 of file canvas.cc.
References canvas_p0_, canvas_p1_, config_, current_labels_, yaze::gui::CanvasUtils::CanvasRenderContext::draw_list, draw_list_, yaze::gui::CanvasUtils::DrawCanvasGrid(), yaze::gui::CanvasUtils::DrawCanvasLabels(), yaze::gui::CanvasConfig::enable_custom_labels, yaze::gui::CanvasConfig::enable_grid, yaze::gui::CanvasConfig::enable_hex_labels, yaze::gui::CanvasConfig::global_scale, yaze::gui::CanvasConfig::grid_step, highlight_tile_id, labels_, and scrolling_.
Referenced by yaze::gui::BitmapCanvasPipeline(), yaze::editor::PixelEditorPanel::DrawCanvas(), yaze::editor::MessageEditor::DrawCurrentMessage(), yaze::editor::SpriteEditor::DrawCurrentSheets(), yaze::editor::ScreenEditor::DrawDungeonMapScreen(), yaze::editor::ScreenEditor::DrawDungeonMapsEditor(), yaze::editor::ScreenEditor::DrawOverworldMapEditor(), yaze::editor::anonymous_namespace{gfx_group_editor.cc}::DrawScaledSheet(), yaze::editor::SpriteEditor::DrawSpriteCanvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG1Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG2Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBlocksetSelector(), yaze::editor::ScreenEditor::DrawTitleScreenCompositeCanvas(), yaze::editor::SpriteEditor::DrawZSpriteOnCanvas(), End(), End(), yaze::gui::EndCanvas(), yaze::gui::EndCanvas(), EndInTable(), yaze::gui::GraphicsBinCanvasPipeline(), yaze::gui::TileSelectorWidget::Render(), yaze::gui::TableCanvasPipeline(), and UpdateColorPainter().

| void yaze::gui::Canvas::DrawOverlay | ( | ) |
Definition at line 1425 of file canvas.cc.
References canvas_p0_, canvas_p1_, config_, yaze::gui::CanvasUtils::CanvasRenderContext::draw_list, draw_list_, yaze::gui::CanvasUtils::DrawCanvasOverlay(), yaze::gui::CanvasConfig::enable_grid, yaze::gui::CanvasConfig::enable_hex_labels, yaze::gui::CanvasConfig::global_scale, yaze::gui::CanvasConfig::grid_step, points_, RenderPersistentPopups(), scrolling_, and selected_points_.
Referenced by yaze::gui::BitmapCanvasPipeline(), yaze::editor::PixelEditorPanel::DrawCanvas(), yaze::editor::MessageEditor::DrawCurrentMessage(), yaze::editor::SpriteEditor::DrawCurrentSheets(), yaze::editor::ScreenEditor::DrawDungeonMapScreen(), yaze::editor::ScreenEditor::DrawDungeonMapsEditor(), yaze::editor::ScreenEditor::DrawOverworldMapEditor(), yaze::editor::anonymous_namespace{gfx_group_editor.cc}::DrawScaledSheet(), yaze::editor::SpriteEditor::DrawSpriteCanvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG1Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBG2Canvas(), yaze::editor::ScreenEditor::DrawTitleScreenBlocksetSelector(), yaze::editor::ScreenEditor::DrawTitleScreenCompositeCanvas(), yaze::editor::SpriteEditor::DrawZSpriteOnCanvas(), End(), End(), yaze::gui::EndCanvas(), yaze::gui::EndCanvas(), EndInTable(), yaze::gui::GraphicsBinCanvasPipeline(), yaze::gui::TileSelectorWidget::Render(), yaze::gui::TableCanvasPipeline(), UpdateColorPainter(), and UpdateInfoGrid().

|
inline |
|
inline |
Definition at line 539 of file canvas.h.
References labels_.
Referenced by yaze::editor::OverworldEditor::DrawOverworldProperties(), and yaze::editor::Tile16Editor::Initialize().
|
inline |
Definition at line 551 of file canvas.h.
References current_labels_.
|
inline |
Definition at line 552 of file canvas.h.
References highlight_tile_id.
|
inline |
Definition at line 554 of file canvas.h.
References selected_tiles_.
|
inline |
Definition at line 555 of file canvas.h.
References selected_points_.
Referenced by yaze::gui::CanvasAutomationAPI::ClearSelection(), yaze::gui::CanvasAutomationAPI::SelectTile(), and yaze::gui::CanvasAutomationAPI::SelectTileRect().
|
inline |
Definition at line 556 of file canvas.h.
References selected_points_.
Referenced by yaze::editor::OverworldEditor::CheckForOverworldEdits(), yaze::editor::OverworldEditor::Copy(), yaze::gui::CanvasAutomationAPI::GetSelection(), and yaze::editor::OverworldEditor::SaveCurrentSelectionToScratch().
|
inline |
Definition at line 558 of file canvas.h.
References mouse_pos_in_canvas_.
Referenced by yaze::editor::OverworldEditor::CheckForCurrentMap(), and yaze::editor::OverworldEditor::HandleEntityInsertion().
|
inline |
|
inline |
Definition at line 561 of file canvas.h.
References rom_.
Referenced by InitializePaletteEditor(), and set_rom().
| void yaze::gui::Canvas::SetGameData | ( | zelda3::GameData * | game_data | ) |
Definition at line 292 of file canvas.cc.
References extensions_, game_data(), and game_data_.

|
inline |
| void yaze::gui::Canvas::AddImageAt | ( | ImTextureID | texture, |
| ImVec2 | local_top_left, | ||
| ImVec2 | size ) |
Definition at line 2407 of file canvas.cc.
References canvas_p0_, draw_list_, and global_scale_.
Referenced by yaze::editor::DungeonRoomGraphicsPanel::Draw(), and yaze::editor::DungeonObjectSelector::DrawRoomGraphics().
| void yaze::gui::Canvas::AddRectFilledAt | ( | ImVec2 | local_top_left, |
| ImVec2 | size, | ||
| uint32_t | color ) |
Definition at line 2416 of file canvas.cc.
References canvas_p0_, draw_list_, and global_scale_.
Referenced by yaze::editor::DungeonRoomGraphicsPanel::Draw(), and yaze::editor::SheetBrowserPanel::DrawSheetThumbnail().
| void yaze::gui::Canvas::AddTextAt | ( | ImVec2 | local_pos, |
| const std::string & | text, | ||
| uint32_t | color ) |
Definition at line 2425 of file canvas.cc.
References canvas_p0_, draw_list_, and global_scale_.
Referenced by yaze::editor::DungeonRoomGraphicsPanel::Draw(), yaze::editor::SheetBrowserPanel::DrawSheetThumbnail(), and yaze::editor::ObjectEditorPanel::DrawStaticObjectEditor().
|
private |
Definition at line 743 of file canvas.cc.
References yaze::gui::PopupRegistry::Open(), popup_registry_, and yaze::gui::RenderMenuItem().

|
inlineprivate |
Definition at line 574 of file canvas.h.
References yaze::gui::CanvasRuntime::canvas_p0, canvas_p0_, yaze::gui::CanvasRuntime::canvas_sz, canvas_sz_, config_, yaze::gui::CanvasRuntime::content_size, yaze::gui::CanvasConfig::content_size, custom_step_, yaze::gui::CanvasRuntime::draw_list, draw_list_, global_scale_, yaze::gui::CanvasRuntime::grid_step, yaze::gui::CanvasRuntime::hovered, is_hovered_, mouse_pos_in_canvas_, yaze::gui::CanvasRuntime::mouse_pos_local, yaze::gui::CanvasRuntime::scale, yaze::gui::CanvasRuntime::scrolling, and scrolling_.
Referenced by BeginInTable(), DrawSelectRect(), DrawTilemapPainter(), and DrawTileSelector().
|
private |
Definition at line 127 of file canvas.cc.
References extensions_.
Referenced by DrawContextMenu(), GetAutomationAPI(), InitializePaletteEditor(), ShowAdvancedCanvasProperties(), ShowBppAnalysis(), ShowBppConversionDialog(), ShowBppFormatSelector(), ShowColorAnalysis(), ShowPaletteEditor(), and ShowScalingControls().
| std::unique_ptr<CanvasContextMenu> yaze::gui::Canvas::context_menu_ |
Definition at line 289 of file canvas.h.
Referenced by Cleanup(), DrawContextMenu(), InitializeEnhancedComponents(), and SetUsageMode().
| std::shared_ptr<CanvasUsageTracker> yaze::gui::Canvas::usage_tracker_ |
Definition at line 290 of file canvas.h.
Referenced by Cleanup(), DrawContextMenu(), InitializeEnhancedComponents(), RecordCanvasOperation(), SetUsageMode(), and ShowUsageReport().
| std::shared_ptr<CanvasPerformanceIntegration> yaze::gui::Canvas::performance_integration_ |
Definition at line 291 of file canvas.h.
Referenced by Cleanup(), InitializeEnhancedComponents(), RecordCanvasOperation(), and ShowPerformanceUI().
| CanvasInteractionHandler yaze::gui::Canvas::interaction_handler_ |
Definition at line 292 of file canvas.h.
Referenced by GetInteractionHandler(), GetInteractionHandler(), Init(), and InitializeDefaults().
|
private |
Definition at line 589 of file canvas.h.
Referenced by renderer(), and SetRenderer().
|
private |
Definition at line 590 of file canvas.h.
Referenced by ApplyConfigSnapshot(), ApplyScaleSnapshot(), BeginInTable(), BeginTableCanvas(), BuildCurrentRuntime(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), custom_labels_enabled(), custom_step(), DrawBackground(), DrawBitmap(), DrawBitmap(), DrawBitmap(), DrawBitmapGroup(), DrawContextMenu(), DrawGrid(), DrawGridLines(), DrawOverlay(), DrawRect(), DrawText(), End(), EndInTable(), GetCanvasHeight(), GetCanvasWidth(), GetClampRectToLocalMaps(), GetConfig(), GetConfig(), GetCurrentSize(), GetCustomLabelsEnabled(), GetGlobalScale(), GetGridStep(), GetMinimumSize(), GetPreferredSize(), GetTileIdFromMousePos(), global_scale(), grid_size(), height(), Init(), Init(), InitializeDefaults(), InitializeEnhancedComponents(), IsAutoResize(), ReserveTableSpace(), ResetView(), set_global_scale(), set_scrolling(), SetAutoResize(), SetCanvasSize(), SetClampRectToLocalMaps(), SetCustomGridStep(), SetGlobalScale(), SetGridSize(), SetShowBuiltinContextMenu(), SetUsageMode(), SetZoomToFit(), ShowAdvancedCanvasProperties(), ShowScalingControls(), UpdateColorPainter(), UpdateInfoGrid(), usage_mode(), and width().
|
private |
Definition at line 591 of file canvas.h.
Referenced by Cleanup(), GetSelection(), GetSelection(), and InitializeDefaults().
|
private |
Definition at line 596 of file canvas.h.
Referenced by ApplyROMPalette(), Cleanup(), DrawContextMenu(), EnsureExtensions(), and SetGameData().
|
private |
Definition at line 600 of file canvas.h.
Referenced by DrawBackground(), DrawBitmap(), DrawBitmap(), and DrawBitmap().
|
private |
Definition at line 603 of file canvas.h.
Referenced by BuildCurrentRuntime(), DrawBackground(), DrawSelectRect(), DrawSolidTilePainter(), DrawTilemapPainter(), DrawTilePainter(), DrawTileSelector(), and IsMouseHovering().
|
private |
Definition at line 607 of file canvas.h.
Referenced by AddContextMenuItem(), ClearContextMenuItems(), editor_menu(), and editor_menu().
|
private |
Definition at line 608 of file canvas.h.
Referenced by SetContextMenuEnabled().
|
private |
Definition at line 611 of file canvas.h.
Referenced by ClosePersistentPopup(), DrawContextMenuItem(), GetPopupRegistry(), GetPopupRegistry(), OpenPersistentPopup(), and RenderPersistentPopups().
|
private |
Definition at line 614 of file canvas.h.
Referenced by DrawGrid(), and set_current_labels().
|
private |
Definition at line 615 of file canvas.h.
Referenced by DrawCustomHighlight(), DrawGrid(), and set_highlight_tile_id().
|
private |
|
private |
|
private |
|
private |
Definition at line 621 of file canvas.h.
Referenced by ApplyROMPalette(), ConvertBitmapFormat(), DrawBitmap(), DrawBitmap(), DrawBitmap(), DrawContextMenu(), GetCurrentBppFormat(), ShowAdvancedCanvasProperties(), ShowBppAnalysis(), ShowBppConversionDialog(), ShowBppFormatSelector(), ShowColorAnalysis(), ShowPaletteEditor(), and ShowScalingControls().
|
private |
Definition at line 622 of file canvas.h.
Referenced by DrawContextMenu(), InitializePaletteEditor(), rom(), and set_rom().
|
private |
Definition at line 623 of file canvas.h.
Referenced by game_data(), and SetGameData().
|
private |
Definition at line 624 of file canvas.h.
Referenced by AddImageAt(), AddRectFilledAt(), AddTextAt(), BuildCurrentRuntime(), draw_list(), DrawBackground(), DrawBitmap(), DrawBitmap(), DrawBitmap(), DrawBitmapGroup(), DrawBitmapTable(), DrawCustomHighlight(), DrawGrid(), DrawGridLines(), DrawInfoGrid(), DrawOutline(), DrawOutlineWithColor(), DrawOutlineWithColor(), DrawOverlay(), DrawRect(), DrawSolidTilePainter(), DrawText(), and DrawTilePainter().
|
private |
Definition at line 627 of file canvas.h.
Referenced by ApplyConfigSnapshot(), ApplyScaleSnapshot(), BuildCurrentRuntime(), DrawBackground(), DrawBitmapGroup(), DrawContextMenu(), DrawCustomHighlight(), DrawGrid(), DrawGridLines(), DrawInfoGrid(), DrawOutline(), DrawOutlineWithColor(), DrawOutlineWithColor(), DrawOverlay(), DrawRect(), DrawSolidTilePainter(), DrawText(), DrawTilemapPainter(), DrawTilePainter(), DrawTileSelector(), Init(), ResetView(), scrolling(), set_scrolling(), SetZoomToFit(), ShowAdvancedCanvasProperties(), and ShowScalingControls().
|
private |
Definition at line 628 of file canvas.h.
Referenced by BuildCurrentRuntime(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), Canvas(), canvas_size(), DrawBackground(), DrawContextMenu(), DrawInfoGrid(), DrawSolidTilePainter(), GetTileIdFromMousePos(), Init(), Init(), ShowAdvancedCanvasProperties(), and ShowScalingControls().
|
private |
Definition at line 629 of file canvas.h.
Referenced by AddImageAt(), AddRectFilledAt(), AddTextAt(), BuildCurrentRuntime(), DrawBackground(), DrawBitmapGroup(), DrawBitmapTable(), DrawContextMenu(), DrawCustomHighlight(), DrawGrid(), DrawGridLines(), DrawInfoGrid(), DrawOutline(), DrawOutlineWithColor(), DrawOutlineWithColor(), DrawOverlay(), DrawRect(), DrawSolidTilePainter(), DrawText(), DrawTilemapPainter(), DrawTilePainter(), DrawTileSelector(), and zero_point().
|
private |
Definition at line 630 of file canvas.h.
Referenced by DrawBackground(), DrawGrid(), DrawGridLines(), DrawInfoGrid(), and DrawOverlay().
|
private |
Definition at line 631 of file canvas.h.
Referenced by drawn_tile_position(), DrawSolidTilePainter(), DrawTilemapPainter(), DrawTileOnBitmap(), and DrawTilePainter().
|
private |
Definition at line 632 of file canvas.h.
Referenced by BuildCurrentRuntime(), DrawBackground(), DrawSolidTilePainter(), DrawTilemapPainter(), DrawTilePainter(), DrawTileSelector(), GetTileIdFromMousePos(), and hover_mouse_pos().
|
private |
Definition at line 637 of file canvas.h.
Referenced by DrawOverlay(), DrawSolidTilePainter(), DrawTilemapPainter(), DrawTilePainter(), DrawTileSelector(), GetLastClickPosition(), HasValidSelection(), mutable_points(), points(), and push_back().
|
private |
Definition at line 638 of file canvas.h.
Referenced by DrawGrid(), DrawInfoGrid(), labels(), and mutable_labels().
|
private |
Definition at line 641 of file canvas.h.
Referenced by BeginInTable(), BeginTableCanvas(), canvas_id(), DrawBackground(), DrawContextMenu(), Init(), InitializeDefaults(), InitializeEnhancedComponents(), ShowAdvancedCanvasProperties(), ShowBppAnalysis(), ShowBppConversionDialog(), ShowBppFormatSelector(), and ShowScalingControls().
|
private |
Definition at line 642 of file canvas.h.
Referenced by DrawContextMenu(), and Init().
|
private |
Definition at line 645 of file canvas.h.
Referenced by DrawSelectRect(), GetSelectedTiles(), mutable_selected_tiles(), and selected_tiles().
|
private |
Definition at line 646 of file canvas.h.
Referenced by DrawBitmapGroup(), DrawOverlay(), DrawSelectRect(), mutable_selected_points(), and selected_points().
|
private |
Definition at line 647 of file canvas.h.
Referenced by DrawSelectRect(), GetSelectedTilePos(), InitializeDefaults(), selected_tile_pos(), set_selected_tile_pos(), and SetSelectedTilePos().
|
private |
Definition at line 648 of file canvas.h.
Referenced by DrawBitmapGroup(), DrawSelectRect(), InitializeDefaults(), IsSelectRectActive(), and select_rect_active().
|
private |
Definition at line 649 of file canvas.h.
Referenced by ApplyConfigSnapshot(), BuildCurrentRuntime(), DrawContextMenu(), DrawInfoGrid(), GetTileIdFromMousePos(), Init(), InitializeDefaults(), SetCustomGridStep(), SetGridSize(), ShowAdvancedCanvasProperties(), and ShowScalingControls().
|
private |
Definition at line 650 of file canvas.h.
Referenced by AddImageAt(), AddRectFilledAt(), AddTextAt(), ApplyConfigSnapshot(), ApplyScaleSnapshot(), BuildCurrentRuntime(), DrawContextMenu(), DrawInfoGrid(), DrawSolidTilePainter(), DrawTilemapPainter(), DrawTileOnBitmap(), Init(), InitializeDefaults(), ResetView(), set_global_scale(), SetZoomToFit(), ShowAdvancedCanvasProperties(), ShowScalingControls(), UpdateColorPainter(), ZoomIn(), and ZoomOut().
|
private |
Definition at line 651 of file canvas.h.
Referenced by ApplyConfigSnapshot(), DrawContextMenu(), DrawInfoGrid(), Init(), InitializeDefaults(), ShowAdvancedCanvasProperties(), and ShowScalingControls().
|
private |
Definition at line 652 of file canvas.h.
Referenced by ApplyConfigSnapshot(), DrawContextMenu(), Init(), InitializeDefaults(), ShowAdvancedCanvasProperties(), and ShowScalingControls().
|
private |
Definition at line 653 of file canvas.h.
Referenced by ApplyConfigSnapshot(), DrawContextMenu(), DrawInfoGrid(), Init(), InitializeDefaults(), ShowAdvancedCanvasProperties(), ShowScalingControls(), and UpdateInfoGrid().
|
private |
Definition at line 654 of file canvas.h.
Referenced by ApplyConfigSnapshot(), DrawBackground(), DrawContextMenu(), Init(), InitializeDefaults(), ShowAdvancedCanvasProperties(), and ShowScalingControls().
|
private |
Definition at line 655 of file canvas.h.
Referenced by Init(), and InitializeDefaults().
|
private |
Definition at line 656 of file canvas.h.
Referenced by ApplyConfigSnapshot(), DrawContextMenu(), Init(), InitializeDefaults(), set_draggable(), ShowAdvancedCanvasProperties(), and ShowScalingControls().