sikuli-driver team mailing list archive
-
sikuli-driver team
-
Mailing list archive
-
Message #21718
[Bug 1239108] [NEW] [request] want Region methods to search on multiple screens with one method call
Public bug reported:
**** how to implement ?
The feature definitely is on the list.
But I did not decide yet how to implement:
- it cannot be done generally for performance reasons (each search cycle on one monitor lasts between 0.5 and 1 sec, so simply searching sequentially is not acceptable)
- for an on-demand-solution: what is the best API integration
I see 3 options:
1. something like <with region:>, but common for all API versions (with is only for Jython) (something like onScreen(All) and all following searches will search all screens until onScreen() resets it to the default or onScreen(n) or onScreen(<some region match or location>) restricts it to a special monitor)
2. use a special Screen constructor: s = Screen(ALL) and then proceed normally with s.wait(), ...
3. make it a Pattern option: pat = Pattern(<some image>).onScreen(ALL), so a wait(pat) will know to search on all screens
option 2 will be available anyway and acceptable on the Java level,
since you have to always qualify the method calls.
----------------------------------------------------------------------------
*** from the originating question
I've read this part: http://doc.sikuli.org/screen.html#multi-monitor-environments
So I know how to get the screens like Screen(0), Screen(1).
But how to use it with Wait() or Click()?
I searched the Anwsers on Launchpad but didn't find what I want.
Should I use something like the loop "for i in range(Screen.getNumberScreens())" ?
However, I am not sure what's the best way to use Wait() or Click() in the loop.
Please kindly help.
Thanks very much!
** Affects: sikuli
Importance: Medium
Assignee: RaiMan (raimund-hocke)
Status: In Progress
** Description changed:
+ **** how to implement ?
+
+ The feature definitely is on the list.
+
+ But I did not decide yet how to implement:
+ - it cannot be done generally for performance reasons (each search cycle on one monitor lasts between 0.5 and 1 sec, so simply searching sequentially is not acceptable)
+ - for an on-demand-solution: what is the best API integration
+
+ I see 3 options:
+ 1. something like <with region:>, but common for all API versions (with is only for Jython) (something like onScreen(All) and all following searches will search all screens until onScreen() resets it to the default or onScreen(n) or onScreen(<some region match or location>) restricts it to a special monitor)
+ 2. use a special Screen constructor: s = Screen(ALL) and then proceed normally with s.wait(), ...
+ 3. make it a Pattern option: pat = Pattern(<some image>).onScreen(ALL), so a wait(pat) will know to search on all screens
+
+ option 2 will be available anyway and acceptable on the Java level,
+ since you have to always qualify the method calls.
+
+ ----------------------------------------------------------------------------
+
+ *** from the originating question
+
I've read this part: http://doc.sikuli.org/screen.html#multi-monitor-environments
So I know how to get the screens like Screen(0), Screen(1).
But how to use it with Wait() or Click()?
I searched the Anwsers on Launchpad but didn't find what I want.
Should I use something like the loop "for i in range(Screen.getNumberScreens())" ?
However, I am not sure what's the best way to use Wait() or Click() in the loop.
Please kindly help.
Thanks very much!
** Changed in: sikuli
Status: New => In Progress
** Changed in: sikuli
Importance: Undecided => Medium
** Changed in: sikuli
Assignee: (unassigned) => RaiMan (raimund-hocke)
** Changed in: sikuli
Milestone: None => 1.1.0
--
You received this bug notification because you are a member of Sikuli
Drivers, which is subscribed to Sikuli.
https://bugs.launchpad.net/bugs/1239108
Title:
[request] want Region methods to search on multiple screens with one
method call
Status in Sikuli:
In Progress
Bug description:
**** how to implement ?
The feature definitely is on the list.
But I did not decide yet how to implement:
- it cannot be done generally for performance reasons (each search cycle on one monitor lasts between 0.5 and 1 sec, so simply searching sequentially is not acceptable)
- for an on-demand-solution: what is the best API integration
I see 3 options:
1. something like <with region:>, but common for all API versions (with is only for Jython) (something like onScreen(All) and all following searches will search all screens until onScreen() resets it to the default or onScreen(n) or onScreen(<some region match or location>) restricts it to a special monitor)
2. use a special Screen constructor: s = Screen(ALL) and then proceed normally with s.wait(), ...
3. make it a Pattern option: pat = Pattern(<some image>).onScreen(ALL), so a wait(pat) will know to search on all screens
option 2 will be available anyway and acceptable on the Java level,
since you have to always qualify the method calls.
----------------------------------------------------------------------------
*** from the originating question
I've read this part: http://doc.sikuli.org/screen.html#multi-monitor-environments
So I know how to get the screens like Screen(0), Screen(1).
But how to use it with Wait() or Click()?
I searched the Anwsers on Launchpad but didn't find what I want.
Should I use something like the loop "for i in range(Screen.getNumberScreens())" ?
However, I am not sure what's the best way to use Wait() or Click() in the loop.
Please kindly help.
Thanks very much!
To manage notifications about this bug go to:
https://bugs.launchpad.net/sikuli/+bug/1239108/+subscriptions
Follow ups
References