Here is an example of how your ButtonBar interface is used.
I perform hardware tests on network appliances (switches, routers, firewalls...). To perform these tasks, serial ports are used to communicate with the devices. I use a USB to DB9 RS232 Serial Adapter Hub (4 ports), then i open 4 terminal windows on one of my screens. Then I load ButtonBar, which places it self on an active terminal/shell window.
Here you can see what this looks like:
So i basicly plug in a COM cable from the hub to a console port on a network device, and power on the device. The unit will output text and stuff on one of the terminal windows. From this point i enter in a config menu, upload a test firmware to the device, run it and it tests the unit.
We follow a process where user must execute multiple commands. For example, we perform "Get sys stat" that retrieves system info, then we start the test; "diagnose hqip start". Once the test finished, we format the device's storage with "execute format ...", then execute reboot "execute reboot" or power off depending on what the results of the test are.
Many commands ask for user input like "yes, no, ...", so this ButtonBar has come in handy, it's like having mini macros, they execute the command, answer yes to any eventual question and your done. No need to abuse the keyboard and fingers. I just click on different buttons at different stages.
Now because I test multiple device at the same time, some devices ask for user input at different times, so i just monitor the screen until one need a input, click the window and ButtonBar jumps to the window selected, then i click the appropriate button.
There is on things to note, when you click on a button, it will execute the command you configured it to type in the terminal window. I sometimes apply 1 seconds pauses to make sure it properly works, this is because some devices that longer than others to respond to a command. So i you can imagine, when clicking on one the buttons, it execute a first command, waits 1 second, then enter "y", then sends "enter". All this takes about 2 seconds in total.
Here is when the problem occurs, if I click on another window in mean time, the ButtonBar jumps to the window I clicked and continues executing the commands. So you need to wait for all the commands to be sent before you click on another window.
I tend to click on another window too soon, and see the stuff it was supposed to type in another window; like half here and half there. This kinda fucks things up little.
It would have been cool to be able to force the ButtonBar to finish executing the commands before it jumps to another windows, so that it does muck things up.
Or make ButtonBar make a button bar on each window/terminal/shell
Now I'm told it could eventually be possible to completely automise to whole process, but where not there yet. In the mean time, it's already great to be able to gain a few seconds now and there by saving some typing to do.
Anyway, just wanted to share how I use your ButtonBar.
Thanks for this,