musescore / MuseScore

MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!
https://musescore.org
Other
12.14k stars 2.63k forks source link

Apply Measure Properties only applies some settings to last selected measure #22128

Open wizofaus opened 6 months ago

wizofaus commented 6 months ago

Issue type

UX/Interaction bug (incorrect behaviour)

Bug description

If you select multiple measures and bring up the measure properties command, then property changes only apply to the last measure in the selection, even when it would sensible/useful to apply to all.

Steps to reproduce

Select 2 consecutive measures Right click and choose "measure properties" Change actual beats per bar (e.g. to 5) Click OK

Actual behaviour: + to indicate extra beats only shown for second measure Expected: both measures should have the same property change applied

(Actually my use case was the reverse, an imported file had an extra beat in every single measure. Because of this bug I had to fix them all one by one. Arguably the problem could also be fixed at the xml import stage, but it was a problematic xml file, and at any rate, it's still reasonable to expect if you select multiple measures and change properties it applies to all of them).

Screenshots/Screen recordings

No response

MuseScore Version

4.2

Regression

I don't know

Operating system

Windows 11

Additional context

No response

MarcSabatella commented 6 months ago

This is currently by design, although of course it’s a reasonable feature request to amend the design.

The main complication with having a dialog like this apply multiple items is how to handle the cases where the initial values differ for some properties. That is, if you’ve selected two measures of different meters, what that actual duration should display by default, and what the semantics should be if you apply the dialog without changing the value. It’s not an unsolvable problem and of course the Properties panel does handle such cases, but no such mechanism has been implemented for this dialog.

wizofaus commented 6 months ago

It's certainly very unexpected behaviour if by design. Solving the "different values" problem isn't that hard - as you note the existing properties panel for engraving items (notes/symbols/text etc.) already handles it. In my case the measures I was selecting all had the same property values anyway.

Get Outlook for Androidhttps://aka.ms/AAb9ysg


From: Marc Sabatella @.> Sent: Monday, April 1, 2024 11:20:01 PM To: musescore/MuseScore @.> Cc: wizofaus @.>; Author @.> Subject: Re: [musescore/MuseScore] Apply Measure Properties only applies some settings to last selected measure (Issue #22128)

This is currently by design, although of course it’s a reasonable feature request to amend the design.

The main complication with having a dialog like this apply multiple items is how to handle the cases where the initial values differ for some properties. That is, if you’ve selected two measures of different meters, what that actual duration should display by default, and what the semantics should be if you apply the dialog without changing the value. It’s not an unsolvable problem and of course the Properties panel does handle such cases, but no such mechanism has been implemented for this dialog.

— Reply to this email directly, view it on GitHubhttps://github.com/musescore/MuseScore/issues/22128#issuecomment-2029673037, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABI5UAO33KIJTOZV5ECMFG3Y3FGHDAVCNFSM6AAAAABFRDC6S6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRZGY3TGMBTG4. You are receiving this because you authored the thread.Message ID: @.***>

MarcSabatella commented 6 months ago

All the more reason to dump the clunky old modal dialog and just allow setting of measure properties in the main Properties panel. That’s how I’d recommend rewording this feature request. Hacking the dialog to be marginally less clunky seems like it would be a misstep.

scorster commented 6 months ago

Thanks for your post wizofaus.

I started a similar Github request over a year ago.

https://github.com/orgs/musescore/discussions/16286

scorster commented 6 months ago

Marc Sabatella wrote > The main complication with having a dialog like this apply multiple items is how to handle the cases where the initial values differ for some properties ... but no such mechanism has been implemented for this dialog.

Interestingly, we can change the Measure Stretch value on a selected range of measures via keyboard shortcuts but, as reported, choosing a new value in the Measures Properties dialog applies only alters the Measure Stretch of the final measure of the selection.

MarcSabatella commented 6 months ago

As explained previously, The "Measure properties" dialog simply has no mechanism to support working on more than one target object at a time. Which is to say, the limitation isn't anything about the settings themselves; it's the dialog that just plain doesn't support operating on anything but a single target. The values of that target are copied into the dialog when you open it and are copied out when you hit OK.

And as I mention above, it would be pointless to hack the old awkward modal dialog dialog to change this behavior. The settings should simply be moved to the main Properties panel which solves the problem much more elegantly.

wizofaus commented 6 months ago

The amount of change to allow the existing Measure properties dialog to support multiple measures isn't huge, compared to the amount of change required to add the support via the properties panel. Having said that, I do agree that it doesn't make sense to continue improving the "old" style dialogs if the intention is replace them, and it doesn't seem anyone (other than myself) is clamouring for this as an especially urgent feature (but given the amount of music I have to import and fix up I do expect to be seeing this problem a LOT in coming months, so I'll almost certainly come up with my own solution, even if it's a command line tool and/or plugin - and it seems such a plugin might already exist from reading https://musescore.org/en/node/344588#comment-1173080). If there is a plan to move towards using the properties panel to modify measure properties, I assume @Tantacrul and/or others would need to be involved?

wizofaus commented 6 months ago

Happy to have this closed given it's covered by @scorster's previous feature request (to me it's essentially a bug - the behaviour is quite unexpected, but accept it can be considered either way, and it appears it's been true in MS since the beginning).

Tantacrul commented 6 months ago

FWIW, I think there are some cool aspect to the bar / measure properties popup that should be incorporated into either the Properties panel or direct interactive elements on the score. We should aim to retire the popup completely.

Happy to be involved in the UX.