Skip to content

Combine canvas and control panel workspace#64

Open
codexbountylab wants to merge 2 commits into
moth-quantum:sourcefrom
codexbountylab:codex/quantumbrush-single-window-workspace
Open

Combine canvas and control panel workspace#64
codexbountylab wants to merge 2 commits into
moth-quantum:sourcefrom
codexbountylab:codex/quantumbrush-single-window-workspace

Conversation

@codexbountylab

Copy link
Copy Markdown

Summary

  • combine the Processing canvas and the existing control panel into one main Quantum Brush workspace window
  • keep the effect/hardware controls on the left and the drawable canvas on the right using a resizable split pane
  • resize and keep the unified window on screen when the canvas size changes after loading images
  • preserve the existing hardware token cleanup on close

Closes #48.

Validation

  • Compiled locally with OpenJDK 21:
    javac -cp "lib\core-4.4.1.jar" -d <temporary-output-dir> src\*.java
  • git diff --check

AI disclosure

I used an AI coding assistant to help inspect the existing Swing/Processing UI structure and draft this change. I reviewed the resulting code and validated it locally with the compilation command above.

@codexbountylab

Copy link
Copy Markdown
Author

Hi @artreadcode, thanks for taking a look. I’ve attached the requested screenshot, working GIF, and a complete Java 17+ test jar packaged as a zip because GitHub comments do not allow direct jar uploads.

The jar includes the effect files and extracts them on startup, so it can be run as a standalone test build. The GIF shows the unified workspace with the effect controls and canvas in the same window.

quantumbrush-unified-workspace-screenshot quantumbrush-unified-workspace-demo

QuantumBrush-unified-workspace-java17-complete.zip

@codexbountylab

Copy link
Copy Markdown
Author

@artreadcode thank you for the update.

I prepared a combined test build that includes both fixes:

I tested the combined build locally. After creating/running/applying strokes, the file-write monitor shows:

*_input.png : 0
*_output.png: 0

The project still writes the normal project files (original.png, current.png, and stroke instruction JSON), but it no longer writes per-stroke *_input.png or *_output.png files.

QuantumBrush-combined-test.zip

@artreadcode

artreadcode commented Jun 17, 2026 via email

Copy link
Copy Markdown
Collaborator

@artreadcode

Copy link
Copy Markdown
Collaborator

Here are the bugs that I said:
Screenshot 2026-06-17 at 22 34 40
Screenshot 2026-06-17 at 22 35 02

@codexbountylab

Copy link
Copy Markdown
Author

@artreadcode thanks for the screenshots. I found that the packaged build can still depend on the launch directory when starting the Python effect process, so running the jar directly can break the Python side and lead to the broken-pipe error.

I’m fixing that now so the jar resolves the bundled effect/ folder from the application directory instead of depending on the current working directory. I’ll upload a clean full zip again once I verify it locally.

@artreadcode

Copy link
Copy Markdown
Collaborator

@codexbountylab That is true. There are multiple broken pipelines that are now confirmed, so I hope it could be resolved.

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.

2 participants