Skip to content
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

Resizable mixer channels/strips #7293

Merged
merged 2 commits into from
May 31, 2024

Conversation

michaelgregorius
Copy link
Contributor

This pull request makes the mixer channels/strips grow with the mixer view. The mixer view now also provides the maximize button so that users can mix in almost full screen.

Screenshot:

Resizable mixer channels

Make the mixer channels resizable within the mixer view.

Remove the setting of the size policy from `MixerChannelView`. Add the
`Fader` widget with a stretch factor so that it is resized within the
layout of the mixer channel/strip. Remove the stretch that was added to
the layout because the fader now stretches.

In `MixerView` remove the top alignments when widgets are added to the
layout so that they can resize. Set the channel layout to align to the
left so that it behaves correctly when it is resized by the scroll area
it is contained in. Make the widget resizable in the scroll area so that
it always fills the space. Set the minimum height of the scroll area to
the minimum size of the widget plus the scrollbar height so that the
channel strips are never overlapped by the scrollbar.

Set the size policy of the "new channel" button so that it grows
vertically with the mixer view. Set a fixed size so that it is as wide as
a mixer strip.
Enable the maximize button for the mixer view now that it is fully
resizable.
@Gabrielxd195
Copy link

Gabrielxd195 commented May 30, 2024

This is great, we can finally maximize the mixer. but there is a problem, I don't think it is necessary to have to remove the volume knobs because the space they occupy is constant; However, the length of the space where the channel names are written varies depending on the number of letters it has. Don't you think it would be better to remove the space where the channel names are written? My suggestion is to leave the volume knobs as they were next to the mute and solo buttons, but make the channel name space larger.

Google Translate

@michaelgregorius
Copy link
Contributor Author

@Gabrielxd195, what do you mean with regards to the removal of the volume knobs? I did not remove any knobs with this PR.

Regarding the name labels: I tried to make them grow as well but due to their implementation I ran into problems while doing so. It is something that should later be attempted again because it would definitively make sense to have them grow as well.

@Gabrielxd195
Copy link

@Gabrielxd195, what do you mean with regards to the removal of the volume knobs? I did not remove any knobs with this PR.

Regarding the name labels: I tried to make them grow as well but due to their implementation I ran into problems while doing so. It is something that should later be attempted again because it would definitively make sense to have them grow as well.

First of all, sorry for my translation errors, I don't speak English, I used Google translate.

At no point did I say to remove the volume knobs (Impossible), but rather to leave them as they were but to remove the space where the channel names are written.

@michaelgregorius
Copy link
Contributor Author

@Gabrielxd195, what do you mean with regards to the removal of the volume knobs? I did not remove any knobs with this PR.
Regarding the name labels: I tried to make them grow as well but due to their implementation I ran into problems while doing so. It is something that should later be attempted again because it would definitively make sense to have them grow as well.

First of all, sorry for my translation errors, I don't speak English, I used Google translate.

No problem. I have already noticed the "Google Translate" at the bottom of your first message. 🙂

At no point did I say to remove the volume knobs (Impossible), but rather to leave them as they were but to remove the space where the channel names are written.

Ah, I think I understand now. So you mean to leave the size of the faders as they were but to use additional space for the channel names if the mixer is made larger?

In an ideal implementation both the faders and the names would grow when more space is available. However, as already noted, I ran into problems when trying to make the channel names use the space. Therefore the fader are currently the only thing that can make use of the additional space.

@michaelgregorius michaelgregorius merged commit 37795ae into LMMS:master May 31, 2024
9 checks passed
@michaelgregorius michaelgregorius deleted the ResizableMixerChannels branch May 31, 2024 11:11
@Rossmaxx Rossmaxx mentioned this pull request May 31, 2024
@Gabrielxd195
Copy link

Ah, I think I understand now. So you mean to leave the size of the faders as they were but to use additional space for the channel names if the mixer is made larger?

In an ideal implementation both the faders and the names would grow when more space is available. However, as already noted, I ran into problems when trying to make the channel names use the space. Therefore the fader are currently the only thing that can make use of the additional space.

Come to think of it, your idea is much better because the size of the knobs and text space should be proportional to the screen resolution. I hope they can implement this later. By the way, I already tried this improvement and I loved how the mixer was maximized, now I can have it fixed. thanks for your contribution.

@michaelgregorius
Copy link
Contributor Author

You're welcome, @Gabrielxd195! I am happy if you and other people find it useful!

Rossmaxx pushed a commit to Rossmaxx/lmms that referenced this pull request Jun 15, 2024
## Make mixer channels resizable
Make the mixer channels resizable within the mixer view.

Remove the setting of the size policy from `MixerChannelView`. Add the
`Fader` widget with a stretch factor so that it is resized within the
layout of the mixer channel/strip. Remove the stretch that was added to
the layout because the fader now stretches.

In `MixerView` remove the top alignments when widgets are added to the
layout so that they can resize. Set the channel layout to align to the
left so that it behaves correctly when it is resized by the scroll area
it is contained in. Make the widget resizable in the scroll area so that
it always fills the space. Set the minimum height of the scroll area to
the minimum size of the widget plus the scrollbar height so that the
channel strips are never overlapped by the scrollbar.

Set the size policy of the "new channel" button so that it grows
vertically with the mixer view. Set a fixed size so that it is as wide as
a mixer strip.

## Enable maximization for mixer view

Enable the maximize button for the mixer view now that it is fully
resizable.
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.

3 participants