02-28-2016 02:38 PM
@tst wrote:I still don't understand why you want to prevent them from also being able to press the buttons/LEDs with the mouse, but that if that's really what you want, then you've been given a few options.
The basic problems: weather, the elements, and operational restrictions.
Operators don't have an external mouse and there's no available surface for a mouse: i.e., an austere operational environment. The laptop has a touchpad. When it's cold, operators wear thick gloves. They're using the touchpad, with some difficulty while wearing the gloves, or they probably temporarily remove the gloves and use cold fingers on the touchpad.
The operators are allowed to use pens (or pencils, etc.) to peck on keys.
On some of the UI panels, the ones with controls, the default focus indication (a box around the control) is currently impossible to see due to the panel color. The panel color was chosen to help the operators see the controls in bright sun conditions. I can remedy that problem by changing each control's background color when it's in-focus.
The idea is to improve human factors by allowing the operator to peck on the TAB key with a pen(s) until there's focus on the desired control, then peck the ENTER key to select that control's UI panel.
After writing all the above, it occurred to me that the operators might, with gloved hands, be able to use an object to operate the touchpad and move the cursor over a control, then press the ENTER key (don't know if that would work with the current value change event). On this common Dell laptop I'm using at home, I tried a couple of options on the touchpad just now: neither a pencil eraser nor a smartphone stylus work well with the touchpad, no response from the eraser and erratic results with the stylus. Also, probably not a good idea to encourage use of pens/pencils/misc. objects on a touchpad in this environment.
This is a good discussion. Any ideas are always appreciated.
Thanks,
02-28-2016 03:03 PM
@MinerHokieRamp wrote:
@tst wrote:
@MinerHokieRamp wrote:
Some operators might want to click on the boolean (LED) as they've done in the past. If I convert indicators to controls and use local variables, is there a way to lock the controls to prevent manual toggling? Set the enabled state to disabled?
That will work, but as Gerd says, will prevent keyboard navigation. You could use the Mouse Down? event for those controls and discard it, but before you go down that path, it sounds to me like you either need to rethink your UI or explain it better to us, because at the moment it sounds like a weird combination of things that you want to allow and disallow and you may be driving yourself down an unnecessary hole of workarounds.
It's a large array of LEDs (at present, they're indicators), with Mouse Down on each LED triggering an event and causing an info screen to pop up.
So the operator doesn't have to use the touchpad, I'd like to tab through the LEDs and push the ENTER key for the pop-up. Thus, I need to tab among the LEDs and make the focus visible to the operator and I need to change event triggers to Value Change.
tst was right- your going down a rabbit hole.
Create an info button and put it next to the indicator
02-28-2016 04:32 PM
@JÞB wrote:
@MinerHokieRamp wrote:
@tst wrote:
@MinerHokieRamp wrote:
Some operators might want to click on the boolean (LED) as they've done in the past. If I convert indicators to controls and use local variables, is there a way to lock the controls to prevent manual toggling? Set the enabled state to disabled?
That will work, but as Gerd says, will prevent keyboard navigation. You could use the Mouse Down? event for those controls and discard it, but before you go down that path, it sounds to me like you either need to rethink your UI or explain it better to us, because at the moment it sounds like a weird combination of things that you want to allow and disallow and you may be driving yourself down an unnecessary hole of workarounds.
It's a large array of LEDs (at present, they're indicators), with Mouse Down on each LED triggering an event and causing an info screen to pop up.
So the operator doesn't have to use the touchpad, I'd like to tab through the LEDs and push the ENTER key for the pop-up. Thus, I need to tab among the LEDs and make the focus visible to the operator and I need to change event triggers to Value Change.
tst was right- your going down a rabbit hole.
Create an info button and put it next to the indicator
Great idea!
For a couple of the indicators, I'll add info buttons, edit the event cases to work for the info buttons(value change) instead of the indicators (mouse down), add some code for toggling the background color of the info buttons for focus, and demo the results to my colleagues in the next couple of days.
Thank you very much.
02-28-2016 07:00 PM
The control will automatically have the highlight property set when it recieves key focus so, you can skip the "add some code for toggling the background color of the info buttons for focus" step.
02-29-2016 01:42 AM
The interesting thing is that even after I see you've accepted Jeff's suggestion of using an image on a button, I still don't see how this relates to what you want, but as long as it works for you, that's fine.
Some extra comments:
02-29-2016 01:52 AM
@tst wrote:The interesting thing is that even after I see you've accepted Jeff's suggestion of using an image on a button, I still don't see how this relates to what you want, but as long as it works for you, that's fine.
The suggestion was to use an "Information" button next to the bool indicators. Sadly, there isn't a shipped (i) button so you have to customize one. The clip is a great start to playing a game of "Simon Says"
02-29-2016 07:35 AM
@JÞB wrote:The control will automatically have the highlight property set when it recieves key focus so, you can skip the "add some code for toggling the background color of the info buttons for focus" step.
The panel is black due to the lighting restrictions. Focus highlight is impossible to see. Is it possible to change the highlight to white?
I've demonstrated the "control-background-color-change-in-focus" option to colleagues and had favorable comments. Due to lighting extremes, I think it's a better option than making the highlight visible.
Thanks,
02-29-2016 07:40 AM
For give me if this was mentioned earlier in this thread!
Invoke node >>> Object Highlight
may be helpful.
Ben
02-29-2016 08:24 AM
@tst wrote:The interesting thing is that even after I see you've accepted Jeff's suggestion of using an image on a button, I still don't see how this relates to what you want, but as long as it works for you, that's fine.
Some extra comments:
- If there's no room for a mouse, I assume there's also no room for a small USB keypad, which you can use to have buttons which are easier to click with gloves.
- Since you're dealing with relatively exteme conditions, you might want to consider other means of interaction, such as using the space key instead of tab for tabbing (basically, use the Key Down? event and replace Space with tab, which is ASCII 9).
- Or speech recognition instead of pressing (search for "LV speak" for an example).
- Or gesture recognition from the webcam (more complicated).
- OS UIs are generally designed for people sitting in an office. If your case is extreme enough, it might be preferable for you to build a simplified UI from scratch using the picture control, although I assume controlling the colors should be enough to make it usable.
I think using a control beside each indicator will provide an easier way to "indicate" to the operator when to press a key and get the popup. I hadn't thought of adding a tiny control beside each LED indicator.
An image on the info button has little value-added in this lighting environment. Highlighting focus by changing background color of the control will be more useful to the operator than a graphic image on the button. I'll just have to spread out the array of indicators so there's no doubt about the pairing of indicators and info buttons.
Funny that I'll be adding controls to essentially "indicate" focus on indicators. But, like a D8 Caterpillar, it should get the job done.
Responses to your numerical comments:
Thanks,
02-29-2016 09:42 AM
@Ben wrote:For give me if this was mentioned earlier in this thread!
Invoke node >>> Object Highlight
may be helpful.
Ben
Will that work for indicators?
Thanks,