Skip to content

Enhance editor panels with asset management and navigation features#20

Merged
amasiye merged 6 commits into
mainfrom
develop
Mar 12, 2026
Merged

Enhance editor panels with asset management and navigation features#20
amasiye merged 6 commits into
mainfrom
develop

Conversation

@amasiye

@amasiye amasiye commented Mar 11, 2026

Copy link
Copy Markdown
Contributor

This pull request introduces several enhancements and new features to the editor's input handling and scene management. The most significant changes are the addition of mouse event support, expansion of keyboard input capabilities, and the introduction of data transfer objects (DTOs) for scene and hierarchy data. Additionally, a new SceneLoader class is provided for robust scene discovery and loading.

Input Handling Improvements:

  • Added support for mouse events in the editor by integrating MouseEvent, including parsing, state management, and utility methods like getMouseEvent, isLeftMouseButtonDown, and getCurrentInput in Input and InputManager. [1] [2] [3] [4] [5] [6] [7]
  • Expanded keyboard input support by adding new key codes for shift-modified keys and play toggle, as well as updating input normalization and key mapping logic. [1] [2] [3]

Scene and Hierarchy Data Management:

  • Introduced SceneDTO and HierarchyObjectDTO classes to encapsulate scene and hierarchy data, including serialization and deserialization methods. [1] [2]
  • Added a new SceneLoader class for resolving asset and scene directories, loading scene data, and extracting hierarchy information from source files.

Event System Extension:

  • Added a new event type HIERARCHY_CHANGED to the editor's event enumeration for tracking hierarchy updates.

These changes collectively improve the editor's input responsiveness, scene management, and data structure clarity.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d8f66c05a2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +855 to +859
$workingDirectory = getcwd() ?: '.';
$assetsRoots = [
$workingDirectory,
$workingDirectory . '/Assets',
$workingDirectory . '/assets',

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Resolve texture files from the project directory

The texture preview lookup is rooted at getcwd() instead of the editor's configured project directory, so opening a project via edit --directory <path> from another shell location makes valid relative texture paths resolve against the wrong tree and renders previews as missing/empty. This breaks inspector behavior for a supported launch mode and should use the same project root the editor was initialized with.

Useful? React with 👍 / 👎.

Comment on lines +42 to +44
public static function fromArray(array $data): self
{

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Return a DTO instance from fromArray

HierarchyObjectDTO::fromArray is declared to return self but has an empty body, so any call will return null and trigger a runtime TypeError. This makes array-to-DTO deserialization unusable and will fail immediately once the method is invoked.

Useful? React with 👍 / 👎.

@amasiye amasiye merged commit 1cd6130 into main Mar 12, 2026
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant