-
-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Disables automations for some widgets (mostly ComboBoxes) #2399
Disables automations for some widgets (mostly ComboBoxes) #2399
Conversation
Extends AutomatableModelView by a new method to enable or disable automations. The state of the variable is taken into account with regards to the ability to drag & drop automations and to show the context menu in the classes ComboBox and Knob. Disables automations for all ComboBoxes in the editors (Song-Editor, Piano Roll, Automation-Editor and BB-Editor). Also disables automations for the tension knob in the Automation-Editor. Fixes issue LMMS#2382
I haven't looked into the issue, or looked through the code, but doesn't it I believe we also have a class, |
@Wallacoloo It depends on how you interpret the name The problem with letting |
It's true that automatable implies that something can be automated (but
doesn't have to), but I'm pretty sure this is referring to the user. An
automatable model can be automated by the user, so it doesn't make sense to
have something the user can automate with automation disabled. An automated
model sounds like it would always be automated.
|
@Wallacoloo @michaelgregorius, in C++ can the combobox have two separate constructors for two separate inherited classes? I agree with @Wallacoloo that putting this in the |
Can someone point me to the portion of code where ComboBox is initialized as automatable? I can't seem to find it. From what I'm reading, most of these GUI components don't assume they're automatable (or if they do, I think it's a bug). I believe rather than toggling the automatable class as non-automatable, we should instead do a type-check on their own internal model before adding any context menus to right-click. I may be wrong here and if I am, @michaelgregorius's PR is the only way to go. |
Ok... I think I found it... This means architecturally most GUI components would fall under the automatable model and are directly coupled to extend the class but the underlying problem is that our naming convention is off a bit with the combo box. For example, at one point, we labeled automatable components e.g. So the question comes back to -- do we let this ComboBox inherit a bunch of automatable logic that it cannot use? It shouldn't, really. Rolling a separate ComboBox and AutomatableComboBox would make much more sense despite the redundancy. This would have to be repeated with Knob of course, which I'd expect to be an even larger undertaking. |
IMHO, being automatable is a concept from the model. While the idea in this request is similar, model objects should have |
Setting the automatable capability in the constructor would be better than |
So take it out of the view. Agreed. Close an re-PR? |
@michaelgregorius decides whether to reuse this PR. |
Adding "in-progress" label, as this PR does currently not require any review. |
@michaelgregorius Please reference this PR when you open a new PR. Closing. |
Extends
AutomatableModelView
by a new method to enable or disableautomations. The state of the variable is taken into account with
regards to the ability to drag & drop automations and to show the
context menu in the classes
ComboBox
andKnob
.Disables automations for all
ComboBoxes
in the editors (Song-Editor,Piano Roll, Automation-Editor and BB-Editor).
Also disables automations for the tension knob in the Automation-Editor.
Fixes issue #2382