Closed etet100 closed 1 month ago
I like it. Kind of a simple manual layout manager.
From: etet100 @.> Sent: Sunday, May 12, 2024 3:02 PM To: ImpulseAdventure/GUIslice-Builder @.> Cc: Subscribed @.***> Subject: [ImpulseAdventure/GUIslice-Builder] Advanced snapping (PR #258)
I would like to present a functionality (work in progress) called advanced snapping. It extends the simple Snap To Grid function. It will add the following capabilities:
The third point I would like to implement as “smart” as possible. That is, for example
A simple example of how it works I would like to demonstrate with a video.
This is a work in progress. There are quite a few elements missing to work in the most basic version.
image.png (view on web)https://github.com/ImpulseAdventure/GUIslice-Builder/assets/22624537/b64d68f8-b2c4-4eb4-9b85-c6024d1fabd5
You can view, comment on, or merge this pull request online at:
https://github.com/ImpulseAdventure/GUIslice-Builder/pull/258
Commit Summary
File Changes
(6 fileshttps://github.com/ImpulseAdventure/GUIslice-Builder/pull/258/files)
Patch Links:
— Reply to this email directly, view it on GitHubhttps://github.com/ImpulseAdventure/GUIslice-Builder/pull/258, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKQIQYUZ2S77WJYYXS6MESLZB64DNAVCNFSM6AAAAABHTA37XCVHI2DSMVQWIX3LMV43ASLTON2WKOZSGI4TCNBVHA3DKOI. You are receiving this because you are subscribed to this thread.Message ID: @.***>
A little teaser. Ribbon buttons.
I've made a lot of progress recently but there are still a lot of, difficult problems to solve: E.g.: 1) Saving guidelines settings in the project file. I'm not even trying to integrate this into the current binary format. I did the initial serialization to json and this is the only sensible solution. 2) Change history (Undo/Redo). Some things work. But already options like CUT, COPY, PASTE require too many changes in the core of the program. I might just disable the ability to use these commands for guidelines. 3) Some of the settings (such as line colors) are not configurable. Margins are red, guidelines are white, and so on.
@etet100 While I apprediate the amount of effort you have put into this and
while I liked some aspects of your original idea I'm concerned you have over-designed this feature.
I also don't think guidlines should be persistent. I much prefer the way the Eclipse WindowsBuilder Plug-in works with GroupLayout. With Guidelines appearing only when you select a UI element, Like a JButton. The guidelines are just that. No snap to and they disappear when no UI Elements are selected.
A major concern is that I need to keep backward compatibilty. People need to load older projects. Which is why my json work is taking some time.
I really think you might want to take a pause and rethink this approach,
Paul--
I have experience with many modern applications and I don't think my approach is incorrect. The current program interface is extremely outdated and gives a 90s feel. I also disagree that my solution is over designed. It is still only a small part of what should be in this application.
I will not insist that my changes be included in the main branch. However, I believe that my changes are going in the only right direction.
And sticking to backward compatibility is also a big mistake. Someday you have to get rid of the ballast and allow further development. You can always release a version that bridges the gap between the old and new versions of project files.
I am closing because there is no way to merge these changes anyway.
I will work on my fork.
I would like to present a functionality (work in progress) called advanced snapping. It extends the simple Snap To Grid function. It will add the following capabilities:
The third point I would like to implement as “smart” as possible. That is, for example
A simple example of how it works I would like to demonstrate with a video.
https://youtu.be/GCrhbCFgQmY
This is a work in progress. There are quite a few elements missing to work in the most basic version.