View Issue Details

IDProjectCategoryView StatusLast Update
0000812OpenMPT[All Projects] Feature Requestpublic2016-11-22 20:58
ReporterWoddAssigned ToSaga Musix 
PrioritynormalSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
Platformx64OSWindowsOS Version10
Product VersionOpenMPT 1.26.02.* (old testing) 
Target VersionOpenMPT 1.27.01.00 / libopenmpt 0.3.1 (upgrade first)Fixed in VersionOpenMPT 1.27.01.00 / libopenmpt 0.3.1 (upgrade first) 
Summary0000812: Do Not or Optionally Create New Patterns
Description

I am unsure of an efficient title for this request. But, here's the deal. I would like to be able to paste pattern data without having new patterns created after performing the Copy Patterns command. I tried all 5 paste commands, but all of them create new patterns.

Additional Information

I use the Copy Patterns function extensively. But, I use an older build in conjunction with the current build because I don't want to have new patterns created when pasting. This is tedious, however, because they both source the same configuration file. I would like to retire the older build. But because I cannot paste without new patterns being created, I need the older build. For me, the Duplicate Patterns function is sufficient for mass pattern creation. If this either cannot be implemented or is difficult to implement, I would appreciate the ability to choose the directory from where OpenMPT sources the configuration file (mptrack.ini).

TagsNo tags attached.
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Activities

Saga Musix

Saga Musix

2016-06-03 18:18

administrator   ~0002437

It sounds like you want to use "Copy Orders" rather than "Copy Patterns" (find it in the order list context menu or assign a shortcut to it).

Wodd

Wodd

2016-06-03 19:38

reporter   ~0002438

Last edited: 2016-06-03 20:00

View 2 revisions

I see that Copy Orders creates duplicates of patterns. Here is what I would like to do, however. I would like to copy the patterns (Copy Patterns) and paste the data vertically, not creating new patterns or creating duplicates. Example: I open One Must Fall: 2097's Danger Room module and use Copy Patterns. In the Bookworm module, I would like to paste that information in channels 15-19. However, I currently cannot do that without using the aforementioned older build.

Saga Musix

Saga Musix

2016-06-03 21:33

administrator   ~0002442

"Copy Orders" is what OpenMPT 1.17-1.something did when you copied multiple orders, i.e. just copy their order numbers.
Pressing insert on a pattern selection duplicats the orders without creating new patterns, too.
"Copy Pattern" (singular) is the only other option that actually copies pattern data without creating new patterns, by copying the whole content of one pattern (just like Select All, Copy). This exists in all OpenMPT versions (as long as only one pattern is selected).
I am not aware of any other pattern copy&paste functions that were removed.

Wodd

Wodd

2016-06-03 22:25

reporter   ~0002443

"'Copy Orders' is what OpenMPT 1.17-1.something did when you copied multiple orders, i.e. just copy their order numbers.
Pressing insert on a pattern selection duplicats the orders without creating new patterns, too.
'Copy Pattern' (singular) is the only other option that actually copies pattern data without creating new patterns, by copying the whole content of one pattern (just like Select All, Copy). This exists in all OpenMPT versions (as long as only one pattern is selected)."
Indeed
After copying patterns, I paste the data into the older build and recopy it using Select All followed by Copy. I simply wish that I didn't need to do that. I wish that I could simply paste the data into a separate module or set of channels without new patterns being created. But, there might not be an easy way around that.
That is why I suggested the alternative of adding the ability to export and import configuration files.

Saga Musix

Saga Musix

2016-11-16 00:54

administrator   ~0002737

r7373 allows to paste multiple patterns without creating new patterns by using either of the "Mix Paste" shortcuts. Note that "overflow paste" must be enabled if you want to continue pasting past the end of the current pattern.

Saga Musix

Saga Musix

2016-11-21 17:13

administrator   ~0002739

As of r7398, "Paste Insert" and "Paste Flood" also support multiple patterns (within the current pattern only). Some feedback if your original issue is implemented as intended would be welcome.

Wodd

Wodd

2016-11-22 15:49

reporter   ~0002749

I have tested the functions. With the mix paste functions, new patterns are still created. However, they do not display in the sequence until the user navigates to them. They do not display in the tree until it is refreshed. I used One Must Fall: 2097's Danger Room music to do testing. I copied the patterns, added 5 channels, and performed a mix paste operation in channel 6. To reproduce the behavior, follow these steps. 1) Navigate to the order list. 2) Perform a Select All operation. 3) Perform a Copy Patterns operation. 4) Navigate to row 0 of pattern 0. 5) Add 5 channels. 6) Navigate to channel 6. 7) Perform a mix paste or a mix paste (IT Style) operation, but don't go anywhere, yet. If overflow paste mode behaved properly and is on, everything should be selected and, when you navigate to the end of the order list (pattern 12) and go to the right once more (or, navigate to row 63 of pattern 12 and go down once more), you should see pattern 13, blank. If overflow paste mode tricked you and looked on (but, was off) you should see that the last column of channel 6 (where the hexadecimal values for the effects are entered) and the whole of channels 7 through 10 are selected and that the information was not pasted beyond pattern 0. Doing those steps from pattern 12, as you might guess, creates patterns 13 through 26, with pattern 26 being blank (assuming that overflow paste mode behaved properly and is on). The behaviors occur with both of the mix paste functions. I tested the mix paste functions in both revision 7375 (I believe it was) and 7413. I have also tested the paste flood and push forward paste functions. They looked like they worked fine. But, I don't often use those. I did find that using the push forward paste function with a 64-row pattern triggered a breakpoint in the code. If I expanded the pattern to the proper size for the copied information or larger, that didn't happen.

Saga Musix

Saga Musix

2016-11-22 17:28

administrator   ~0002750

The patterns not showing up are already covered by issue 0000891. There is indeed one empty pattern created at the end which is an off-by-one error. Together with the bug in insert mode, these are, as far as I can gather, the only problems right now.

Saga Musix

Saga Musix

2016-11-22 19:44

administrator   ~0002753

All issues should be fixed in r7416.

Wodd

Wodd

2016-11-22 20:57

reporter   ~0002754

Upon testing revision 7416, here is what I found.

  1. When using either of the mix paste functions in pattern 0, no additional patterns were created. They were upon pasting elsewhere. This does seem like a reasonable behavior.
  2. Even when overflow paste is off (whether through manually turning it off or it turning itself off) (where it turning itself off is the "being tricked" part mentioned in my previous note), the selection is displayed properly.
  3. When using push forward paste in a 64-row pattern, a breakpoint is not triggered in the code now.

Issue History

Date Modified Username Field Change
2016-06-03 17:00 Wodd New Issue
2016-06-03 18:18 Saga Musix Note Added: 0002437
2016-06-03 18:18 Saga Musix Status new => feedback
2016-06-03 19:38 Wodd Note Added: 0002438
2016-06-03 19:38 Wodd Status feedback => new
2016-06-03 20:00 Wodd Note Edited: 0002438 View Revisions
2016-06-03 21:33 Saga Musix Note Added: 0002442
2016-06-03 22:25 Wodd Note Added: 0002443
2016-11-16 00:54 Saga Musix Assigned To => Saga Musix
2016-11-16 00:54 Saga Musix Status new => feedback
2016-11-16 00:54 Saga Musix Target Version => OpenMPT 1.27.01.00 / libopenmpt 0.3.1 (upgrade first)
2016-11-16 00:54 Saga Musix Note Added: 0002737
2016-11-21 17:13 Saga Musix Note Added: 0002739
2016-11-22 15:49 Wodd Note Added: 0002749
2016-11-22 15:49 Wodd Status feedback => assigned
2016-11-22 17:28 Saga Musix Note Added: 0002750
2016-11-22 19:44 Saga Musix Status assigned => feedback
2016-11-22 19:44 Saga Musix Note Added: 0002753
2016-11-22 20:57 Wodd Note Added: 0002754
2016-11-22 20:57 Wodd Status feedback => assigned
2016-11-22 20:58 Saga Musix Status assigned => resolved
2016-11-22 20:58 Saga Musix Resolution open => fixed
2016-11-22 20:58 Saga Musix Fixed in Version => OpenMPT 1.27.01.00 / libopenmpt 0.3.1 (upgrade first)