![]() |
KnowBrainer Speech Recognition | ![]() |
Topic Title: Need help designing "Window Grid" Topic Summary: How many rows and columns Created On: 08/05/2020 09:54 AM Status: Post and Reply |
|
![]() |
![]() |
- Edgar | - 08/05/2020 09:54 AM |
![]() |
![]() |
- Mphillipson | - 08/07/2020 04:04 AM |
![]() |
![]() |
- MDH | - 08/30/2020 12:10 PM |
![]() |
![]() |
- Mphillipson | - 08/31/2020 04:40 AM |
![]() |
![]() |
- MDH | - 08/31/2020 08:08 AM |
![]() |
![]() |
- kkkwj | - 08/07/2020 11:29 PM |
![]() |
![]() |
- Edgar | - 08/08/2020 10:57 AM |
![]() |
![]() |
- alexander | - 08/10/2020 04:04 PM |
![]() |
![]() |
- Edgar | - 08/10/2020 05:26 PM |
![]() |
|||
In this thread: http://www.knowbrainer.com/forums/forum/messageview.cfm?catid=25&threadid=34643&enterthread=y I offer "Screen Grid" a robust multi-monitor aware replacement for Mouse Grid. It puts a unified grid over your entire screen real estate regardless of how many monitors you have hooked up. I've also got "Monitor Grid <1to10complex>" mostly finished which puts up the grid on only the specified monitor - the numerals list can go as high as necessary without changing the driver script. My current thought is to give the user a pair of controls based on pixels: Size of columns: [ ] (in pixels) Size of rows: [ ] (in pixels) This way the size of rows and columns in the grid would be constant despite the size of the window (both "Screen Grid" and "Monitor Grid…" Use a fixed number of columns and rows - if a monitor’s resolution changes the size of the grid rectangles changes. Obviously, the final column’s rows will not be the same size as the rest of the grid (unless the math works out perfectly: Window_Width / pixels-per-column as a 0 remainder). Window Grid <1-26> by <1-10> Currently, I am leaning toward having two driver scripts: Window Grid Window Grid <1-26> by <1-10> having the program use the user’s preferences for number of columns and rows with the first script and the specified number the second. ------------------------- -Edgar |
|||
|
|||
![]() |
|||
Hi Edgar, I have a different approach. In that I have labels stuck to the edge of my monitors and have a script that can position the mouse within 50 pixels regardless of the current application. The KnowBrainer script I use and more information is at the following link: https://github.com/Mark-Phillipson/DragonScripts/wiki/Clicking-Anywhere-on-the-Screen-by-Voice
------------------------- Thanks Mark
Dragon Professional Advanced Scripting/KnowBrainer Scripts |
|||
|
|||
![]() |
|||
Mark,
I thought that you might also be interested to know that I developed a monitor-independent way of simply creating mouse-positioning commands remotely that does not require number choosing/Show Numbers or Click By Voice or variations, or mouse grids, and is independent of monitor size, resolution, or scaling. The accuracy is within 2 pixels. If you send me an image of something that I am not likely to have, I can create commands to demonstrate proof of concept and sent these back to you. I will send you a private message with my contact info.
MDH ------------------------- |
|||
|
|||
![]() |
|||
Hi Mark,
------------------------- Thanks Mark
Dragon Professional Advanced Scripting/KnowBrainer Scripts |
|||
|
|||
![]() |
|||
Mark,
Hi. Thanks for sending. Will look at this after work today. Yes, it would be on a per screenshot basis.
MDH ------------------------- |
|||
|
|||
![]() |
|||
Hi Edgar, if it was me, I would more or less use the cell-size method that you describe. Here is what I would use for design thinking:
1) I would assume the cells are square because vertical and horizontal positioning seem the same to me. (Beware, I am not yet a regular voice mouse-clicker and so have limited experience there.) Set a default square cell size based on 1) monitor resolution and 2) your grid experience. You only need one number to set the size of the cell.
2) I assume that people will zero in on a cell size that works for them. As evidence, consider Mark's method of fixed and permanent cell size stickers on his monitor, which works well for him. Thus, you only need one configuration value for a square cell size.
3) Let users override the default cell size somewhere. (I would allow different default cell-sizes for each installed monitor, if it was me.)
4) Finally, provide one or more commands to allow users to override their preferred default size in special cases. Your commands could be "window grid (for the default size)," and "window grid bigger/smaller" or "window grid up 20" for +20% bigger cells or "window grid smaller 50" for -50% smaller cells.
That way, users would get a workable default cell size based on their monitors, your experience, or their preferences. And they could increase or decrease the cell sizes by some default/configurable percentage like 20% or 50% or something, if they really wanted different sized cells. For example, "window grid bigger" would use the configured default increment size of 20% to draw bigger cells.
My guess is that once people find a good cell size for them, they will stick with it, so I imagine the "bigger" and "smaller" commands would only get used in rare cases.
------------------------- Win10/x64, AMD Ryzen 7 3700X, 64GB RAM, Dragon 15.3, SP 6 PRO, SpeechStart, Office 365, KB 2017, Dragon Capture, Samson Meteor USB Desk Mic, Klim and JUKSTG earbuds with microphones |
|||
|
|||
![]() |
|||
I settled on three modes. One mode relies on the user dictating the grid specification as part of the script name: Window Grid <1to26complex> By <1to10complex> this script creates a "ShellExecute" statement which executes the application passing it 2 commandline parameters (number of columns and/by number of rows). If the app sees exactly 2 commandline parameter arguments it assumes the user wants to override the normal preferences. Both arguments are tested to ensure that they are in range integers (if either fail a reasonable default is used).
Otherwise, Preferences is queried for the value of Fixed/Proportional and the number of columns and rows. In the "Fixed" mode these numbers are used directly; in the "Proportional" mode they are modified based on the window’s area (width X height) divided by the monitor’s (on which the window’s top left corner is positioned) area. This way a Maximized window gets the full number of columns and rows, a window which is half the size of its home monitor gets half as many columns and rows etc.
I've got it all working but it needs a little polish to localization. I hope to post a 0.0beta version today or tomorrow. ------------------------- -Edgar |
|||
|
|||
![]() |
|||
Edgar, sorry I am late to this thread. When you say "Window Grid <1-26> by <1-10>" are you implying that this could be a voice command that you say? For example if I said "window grid twenty by 10", that's what it would draw?
fwiw the new Mac OS Catalina (and iOS) voice control allows you to say "show grid with 20 rows" for example. Which is pretty useful. |
|||
|
|||
![]() |
|||
Exactly, the currently active window would have a grid of 20 columns by 10 rows drawn over it. Each grid cell would have a letter/number combination drawn in its center (e.g. B3) then you would say "bravo 3" or "be three" etc. and the mouse cursor would be moved to the (approximate) center of that cell. http://www.knowbrainer.com/forums/forum/messageview.cfm?catid=25&threadid=34692&enterthread=y ------------------------- -Edgar |
|||
|
FuseTalk Standard Edition v4.0 - © 1999-2021 FuseTalk™ Inc. All rights reserved.