Comments (5)
I like this
It would be good as a feature across all timers to increase the countdown's size from 9 seconds to 0 to cover the entire button.
from companion.
Maybe we need to make a triple-size font for that ;)
from companion.
It would also be nice to have an action run purely off a feedback ( or should we call them reaction ) ie. qlab go action fires when we receive switcher input x on program without assigning this to a button. buttonless reaction action
from companion.
Basically I tend to think of objects providing input and output. A Button provides output: key down, key up, long keypress at lower level and triggering actions at higher level. For me it makes sense that the output part is at the bottom and separated from the input part. Input part at top. The Input of a Button is graphics shown on it. No-brainer so far, but how exactly can device feedback lead to a graphics change?
In my opinion it has to be (at least) a two part process.
- Creating the visual appearance of a button with elements like geometric primitives, icons, text... I tend to think of "layers" like in photoshop. Every element has some properties like color, text ..., which you can just set.
- Link feedback by devices to the properties of the elements.
That's the tough part because it actually would require programming by the user.
The process needs mapping value ranges and combining them. Mapping means the device e.g. gives back time in milliseconds and you want to show in minutes:seconds or the device gives back state information in numerical or even sometimes in bit-state and you want to visualize with rgb-color. Combining means you e.g. want to change color of button only when input is on air AND clip is running or you want to change text if input1 is loaded in out1 OR input1 is loaded in out2.
That means we would have to provide a full set of operators and conditionals to the user.
Personally I like that because I can work with that and my credo is always power to the user.
If I had to design it, I guess I'd go with textual programming and not try to make it simple with a graphical solution while actually making it more difficult. A text input where one can use js-syntax, so that it is easy to validate and execute.
I very much like the idea of sample buttons, I think that's the only way to make such a complex system usable for the average user, they can use the sample as it is or adjust it a little bit. Module programmers can provide variables in different useful formattings to make it a little easier on the user side. Documentation of available variable names needs to be generated inline and presented to the user.
I like to propose the button pool once again. I think of a big abstract storage for button configurations. Every module can register it's predefined buttons in a read-only section, if you want to use such a button copy it to the read/write user-button-pool and edit it to your needs. Off course you also could create a button from scratch.
Sorry for the long comment, I hope I wrote it understandable.
from companion.
Fixed in f6aeb2a
from companion.
Related Issues (20)
- [BUG] "Back" action not working
- Importing triggers from user-generated file: Id issues ? HOT 1
- Variable for the free diskspace on disk 1 for an ATEM Television Studio HD8 HOT 1
- [BUG] Stream Deck Disconnecting On New Models HOT 3
- Windows Multiple IP Addresses single Network Interface [BUG] HOT 4
- [BUG] internal: Actions: Abort all delayed actions on a page HOT 1
- internal: Button: Trigger press and release reffred FROM TEXT including STEP HOT 1
- [Feat] Modernize way of action advancement HOT 4
- [BUG] Companion HTTPS Web Server HOT 1
- [BUG] "Companion is unable to start" on Windows 10 HOT 2
- Update value of static-text fields in actions and feedbacks via learn callback HOT 4
- [BUG]: Module registration failed Error: Call timed out HOT 1
- Add milliseconds to log entries HOT 2
- Trigger on buttons HOT 2
- [BUG] Companion crashing with ERR_STREAM_DESTROYED error HOT 10
- [Feat] Companion Notification Service HOT 5
- [BUG] Deleted button persists on page in some conditions HOT 4
- [BUG] Cloned button doesnt display on companion start
- [BUG] Button text does not allow white space as 1st or 2nd char of text field HOT 4
- Track button usage HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from companion.