unwanted system with InstrumentName BarLine & Bracket if VBox immediately after HBox
Steps to reproduce on 3543170 and 2.0.2 release:
- Start with two-meas multi-part score (e.g. SATB):
- Insert horizontal frame between meas 1 & meas 2 (can drag & drop hframe onto meas 2):
- Insert vertical frame between meas 1 & meas 2 (can drag & drop vframe onto meas 2):
Notice the unwanted instrument names and initial barline and bracket, circled in red. By examining object debugger, I've determined that mscore is actually inserting an entire *system* element, circled in red here:
Attachment | Size |
---|---|
test_instname_between_vframe_hframe.mscz | 6.85 KB |
Comments
Interestingly, if I start with that .mscz, I can get more glitches:
4) select the HBox and delete it will result in:
apparently it has somehow turned into a system of a {barline,bracket,VBox}!
5) then undo (Ctrl->z) will result in:
note: that glitched VBox starts right after the vbox and continues for a whole page width across the margin. ObjectDebugger seems to be in same state as in previous object debugger pic.
6) then selecting that glitch box (circled in red above) and deleting it will result in
apparently that vbox is now part of the system with meas 2, according to object debugger:
I can also produce some more funny things.
if I use a single-instrument score, then the moment I insert the VBox after the HBox I do not see any VBox added to the score (nothing changes visually), but I do know that that VBox is present because the object debugger indicates that a VBox is added to the second system. Then deleting the HBox again results in the bizarre glitch whereby it turns into a VBox.
So at this point, I'm not sure the error is actually due to the generated instrument names, but is something to do with adding VBox after HBox.
I believe this is either same as, or very related to, #65401: Inserting / appending horizontal then vertical frame causes system to split. Note there were several other bugs in this area that were fixed leading up to 2.0, it will be very important to test any changes against those other bugs to make sure they aren't re-broken.
This is a duplicate. Sorry for not searching tracker completely.
>> "it will be very important to test any changes against those other bugs to make sure they aren't re-broken"
If I see an old fixed bug doesn't have test files associated with it, I suppose that means I should go ahead and add some test cases for them.
I'm going to investigate if preventing systems with 0 Measures does the trick.
Would preventing systems with 0 measures also prevent an HBox at the end of a system? I have used them several times in my scores.
Also, a VBox is actually a system with 0 measures (IIRC, the VBox itself is a
MeasureBase
, but not aMeasure
).>> "Would preventing systems with 0 measures also prevent an HBox at the end of a system?"
According to object debugger, a HBox at the end of a system does not form a new system:
But HBox forms a new system when followed by Measures. What I was saying is that if laying out a system and layout discovers when starting a new system that the first measure won't fit on the file, then will simply not layout that system and measure on that line, and instead start a new line and retry.
>> "the VBox itself is a MeasureBase, but not a Measure"
I'm aware of distinction between Measure vs. MeasureBase, which is why I said "Measure" in #6 :)
>> "Also, a VBox is actually a system with 0 measures"
Yes, a VBox or TBox do form a system of themselves only. And I guess I can even create a system of one HBox only if I add a line break to a HBox.
Anyway, right now after investigating a bit more, I think I realize that the 0-measure system is not the issue. I'm noticing if I create a new score of two meas, then add HBox before meas 2, and then add TBox before meas 2, then I get the following state in object debugger:
I selected the TBox in the debugger, but I'm noticing the TBox isn't displayed on score layout, even though it is part of the system of meas 2. So must be something else at issue.
Automatically closed -- issue fixed for 2 weeks with no activity.
Automatically closed -- issue fixed for 2 weeks with no activity.
Automatically closed -- issue fixed for 2 weeks with no activity.
Automatically closed -- issue fixed for 2 weeks with no activity.
Automatically closed -- issue fixed for 2 weeks with no activity.
Automatically closed -- issue fixed for 2 weeks with no activity.
Automatically closed -- issue fixed for 2 weeks with no activity.