-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move widget files, add folder for track and instrument #6374
Conversation
I didn't touch |
🤖 Hey, I'm @LmmsBot from github.com/lmms/bot and I made downloads for this pull request, click me to make them magically appear! 🎩
Windows
Linux
macOS🤖{"platform_name_to_artifacts": {"Windows": [{"artifact": {"title": {"title": "32-bit", "platform_name": "Windows"}, "link": {"link": "https://output.circle-artifacts.com/output/job/f1bacb40-4840-4e39-aeba-30782cc04215/artifacts/0/lmms-1.3.0-alpha.1.189+gef9e92a91-mingw-win32.exe"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/16899?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}, {"artifact": {"title": {"title": "64-bit", "platform_name": "Windows"}, "link": {"link": "https://output.circle-artifacts.com/output/job/4a2226c3-09a5-4e9c-9ee4-d7cbac59fbb8/artifacts/0/lmms-1.3.0-alpha.1.189+gef9e92a91-mingw-win64.exe"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/16897?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}, {"artifact": {"title": {"title": "32-bit", "platform_name": "Windows"}, "link": {"link": "https://ci.appveyor.com/api/buildjobs/eo4fqj24n8o3qd0u/artifacts/build/lmms-1.3.0-alpha-msvc2017-win32.exe"}}, "build_link": "https://ci.appveyor.com/project/Lukas-W/lmms/builds/43635922"}, {"artifact": {"title": {"title": "64-bit", "platform_name": "Windows"}, "link": {"link": "https://ci.appveyor.com/api/buildjobs/b5enk7ejxk6trce0/artifacts/build/lmms-1.3.0-alpha-msvc2017-win64.exe"}}, "build_link": "https://ci.appveyor.com/project/Lukas-W/lmms/builds/43635922"}], "Linux": [{"artifact": {"title": {"title": "(AppImage)", "platform_name": "Linux"}, "link": {"link": "https://output.circle-artifacts.com/output/job/1a4f2f60-c4a3-4cea-b437-c715d4813a30/artifacts/0/lmms-1.3.0-alpha.1.189+gef9e92a91-linux-x86_64.AppImage"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/16895?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}], "macOS": [{"artifact": {"title": {"title": "", "platform_name": "macOS"}, "link": {"link": "https://output.circle-artifacts.com/output/job/a0b411cc-2ccd-429a-9c92-02609b81d05b/artifacts/0/lmms-1.3.0-alpha.1.189+gef9e92a91-mac10.14.dmg"}}, "build_link": "https://circleci.com/gh/LMMS/lmms/16898?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link"}]}, "commit_sha": "dfb051efdcd9050094622943080ee01f64b56ae7"} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few thoughts
- PositionLine is only used in editors, right? Maybe it should live in the editors folder.
- I'm not sure how I feel about ClipViews being in the track folder. I understand the reasoning, but that's not where I would expect them to be if I were searching for them.
Looks good otherwise
I share that feeling 😅 but it would be nice if they lived together in a directory, even if it's only 5 of them.
I could see that. Same goes for TimeLineWidget, StepRecorderWidget and Rubberband. |
I designed For |
Okay so LinkedModelGroupViews goes. I'd like to move out |
Sounds good! |
I don't know what the consensus is for more small widgets in the |
Why is |
I understand how it can get confusing with many classes named "instrument". The
I thought it made sense to put the window in the same directory as all its children, but I'll reverse it if I get a second opinion.
|
I need some opinions before I can continue (will have to fix a lot of strings)
|
Makes more sense to put |
My opinion would be a copy of Spekular's:
|
Thank goodness for the Unix toolbox. This oneliner finds all renamed files since a given commit and updates all strings to use the new path (works only for paths relative to base of repo). Maybe you might find it useful. git ls-tree -rz --name-only HEAD | xargs -0 sed -i -f <(git diff --raw ENTER_COMMIT_ID_HERE | sed -En 's/.*R[0-9]+\t(.*)\t(.*)/s^\1^\2^g/p') |
c2451d6
to
2b1144c
Compare
I've squashed the commits, ready for review. |
@allejok96 While users are reviewing, if you rebase a local copy of this branch on #6379 (or wait until it's in master), you can check your locale updates. |
@JohannesLorenz Strings look alright, except for |
Both is OK to me. I'd say first come first serve? |
I wait until the renames of this PR are approved. |
If it's just for moving forward, I'd help you by reviewing this PR, but I'm rarely involved in GUI stuff, so I'm not a good candidate. I might try a review if no one else does it in the next days... 🥲 |
@JohannesLorenz and @Spekular's suggestions has been added. @PhysSong had some concerns - maybe we can get a second opinion? Or else we're good to go, as long as it builds 🙃 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Most widgets reside where I'd expect them. A few points:
MixerLineLcdSpinbox
sounds a bit non-generic. Should it be insrc/gui
?- I wonder if
SubWindow
is so generic that it should go down intowidgets
? - Should we add a folder
src/gui/base-classes
? (AutomatableButton
,SideBarWidget
,ControllerDialog
...) - We have a lot of
...View
s. Extra foldersrc/gui/views
? - I wonder why we have an extra directory for
editors
, but leave the non-modal dialogs (EffectControlDialog
) insrc/gui
. After all, aren't they both some kind of windows inside the MainWindow?
Anyways, these are all just suggestions. The PR is OK.
I aimed to group things by concept rather than if it's a base/derived class, if it contains a specific word, or if it's located at a specific level in the GUI. I find this approach more helpful when looking for where a certain feature is implemented. So
Perhaps. I just put it where all of the other Lcd* siblings were, since there are a few.
On the other hand it's mostly used by |
I'd say let's merge it, then? |
I'm still not sure where |
Note: As I merged the |
Add clips, tracks and instrument directory, clean up widgets.
Lol I forgot to update my own remark. Well, now we know that CI works 😄 |
Moving files in
src/gui
, no change to their source. Updated translations accordingly.gui/clips
for*ClipView
gui/editors
for editors and their child widgetsgui/instrument
forInstrumentTrackWindow
and child widgetsgui/tracks
for*TrackView
and child widgetsgui/widgets
for generic widgets only