mcallegari / qlcplus

Q Light Controller Plus (QLC+) is a free and cross-platform software to control DMX or analog lighting systems like moving heads, dimmers, scanners etc. This project is a fork of the great QLC project written by Heikki Junnila that aims to continue the QLC development and to introduce new features.
Apache License 2.0
967 stars 355 forks source link

Can flash multiple flash buttons in a solo frame. #215

Open joedemax opened 10 years ago

joedemax commented 10 years ago

I'm pretty sure this a bug. If I wanted to be able to hold down multiple buttons I'd just put them inside a normal frame.

to repro:

Create a few scenes, add to a solo frame and make them flash buttons. Assign MIDI or Keyboard shortcuts. Start operator mode and hold down both keys.

AThomsen commented 6 years ago

Hmm... What do you expect should happen?

yestalgia commented 1 year ago

The flash button pressed first should disable all other buttons being pressed until it is released.

kpr0th commented 1 year ago

The flash button pressed first should disable all other buttons being pressed until it is released.

What should happen after it is released? Should the other button come back on?

yestalgia commented 1 year ago

I've had a long think about how this should behave. Please review my suggestion:

So let's say you have a solo frame with 3 buttons: A , B and C.

Button A and B are "flash" buttons. Here's how I think it should work with examples:

Case 1: C is active, A is then pressed

Case 2: B is active, A is then pressed

I do not feel strongly in what order we think buttons should be allowed to be pressed, only that the current behaviour is counter-intuitive because Solo Frame should mean only 1 of the functions should ever be able to be activated.

kpr0th commented 1 year ago

I'm just a lowly (and relatively new) user. So take this with the requisite grains of salt. But both of your examples have what seem like counter-intuitive aspects in my mind.

In Case 1, you want a flash button press to override a toggle button, which I think is probably correct. But then you want the software to remember the history of the button that the flash button(s) overrode, and restore it when you release the flash, and that seems odd to me. Imagine if this was adopted, and if they were all toggle buttons -- wouldn't you expect for consistency that toggling one button off should then restore the prior button back to on?

In Case 2, now you want a flash button to not override another flash button. I'd prefer that the last pressed thing should always take over in a soloframe, and not have a special case for flash buttons.

For what little it's worth, if a change was made, I'd suggest that pressing a flash button in a soloframe should probably turn off any other widget active in the same frameset, but then nothing should turn back on when a flash is released.

yestalgia commented 1 year ago

I tend to agree, my reasoning for the difference in behaviour is due to the difference in actual use of the VC during shows.

I guess this is biased but a lot of us are desperate for a way to override a scene/collection temporarily to strobe or do some other effect, until we release it so to go back to that scene/collection.

I feel this could work with a solo frame with a base scene (C) selected, then being able to switch to A or B by flashing these.

But as I said, totally don't mind what direction is taken as long as we can make solo frames do something for flash buttons.

kpr0th commented 1 year ago

@yestalgia Just a couple thoughts, in case there's an existing way to get what you are looking for.

One: (and I"m not sure it actually works this way) - to turn off the fixtures in the base scene (C) while the flash scene is active, could you set the fixtures to use LTP (latest takes precedence) and set those fixtures' dimmer channels to 0 in your flash scene? I'm guessing that they'd come back on automatically once the flash was released. And if it works this way, I'd guess it doesn't matter if the flash button was in a soloframe or not.

Two: does it have to be a flash button that accomplishes this? Could you put a toggle button in the soloframe for the "flash" scene (A), and then simply click button A and then back to button C when you want to restore the original?

ghost commented 1 year ago

Well, I found this forum post where the same concept was being discussed: https://www.qlcplus.org/forum/viewtopic.php?f=18&t=13413

I’ll try to summarize briefly what the discussion seemed to lean toward as potential directions to head in.

One is to make a new option, perhaps on a flash button, that can essentially apply a blackout to one or more universes or to the other contents of a frame, and then let a selected function play while all other functions are blacked out. And release the blackout when the selected “flash” button or function is released.

The other is to create some sort of priority system, where presumably if any high priority function(s) is active, any lower priority functions would be temporarily blacked out or otherwise suspended, and then resumed when the higher priority functions are stopped.