-
-
Notifications
You must be signed in to change notification settings - Fork 986
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
Control links are lost when duplicating automation clips #3781
Comments
+1, hit this all the time. This must be an order of operations problem because once you Ctrl + drag the control back it fixes it but the description copies just fine. |
This doesn't always happen with me but from time to time. Right now I'm unable to reproduce. |
This i reported earlier, and it is a renewed fail.
|
Of cause you already knows this, but in case you do not..
If i simply copy the objectID into the second block, like this
The TCO get the curve shape back, and works on the automated control |
Well is it fixed? |
Not yet, but it will be likely to be fixed in RC7. |
Here are some ideas:
On a side note, #2875 doesn't fix the collision perfectly. For example, you can loading |
Something like
... for rc7 and
... for the final 1.2 release? |
May i ask why the |
@musikBear After #2875, new objects and saved objects use different ranges of ID. When saving, new objects' IDs are converted by |
Oh.. i understand. Good explanation 👍 |
Yeah, I think this is a good idea. Revert #2875 and remove this issue from RC7. Unless you have a better fix in the works off course. |
I have a fix, but I think it needs some changes. I'll remove this from RC7 without doing anything, but keep this in 1.2.0 milestone. |
How about hacking diff --git a/src/core/AutomationPattern.cpp b/src/core/AutomationPattern.cpp
index 25da6defb..c14b83104 100644
--- a/src/core/AutomationPattern.cpp
+++ b/src/core/AutomationPattern.cpp
@@ -787,6 +787,14 @@ void AutomationPattern::resolveAllIDs()
{
a->addObject( dynamic_cast<AutomatableModel *>( o ), false );
}
+ else
+ {
+ o = Engine::projectJournal()->journallingObject( *k + ( 1 << 23 ) );
+ if( o && dynamic_cast<AutomatableModel *>( o ) )
+ {
+ a->addObject( dynamic_cast<AutomatableModel *>( o ), false );
+ }
+ }
}
a->m_idsToResolve.clear();
a->dataChanged(); |
I'm not too familiar with the journalling code, so I can't comment on whether it's a good fix or not, but if it works, you're happy with it, and we'd like to minimise the number of structural changes in |
Agreed. Since I don't have a better fix for |
The 'lost connection' is unfortunately also a fact for on/off controllers, and not just for copies, but also after reopen of a saved project. |
@musikBear I think you're talking about #4632 (comment) . |
@PhysSong |
I didn't explain that in #4632: IDs are saved correctly in automation patterns, but not in connected models(the green LED). If any of them doesn't contain its ID, the automation will be broken. |
When using Copy/Paste or Ctrl+Drag to duplicate an automation clip, the link to a control is lost.
This makes it very tedious to duplicate automation clips, as one needs to restore the links manually for each clip.
LMMS 1.2 RC3 Linux.
The text was updated successfully, but these errors were encountered: