The SysInfo object is created by the DOpusFactory.SysInfo method. It lets scripts access miscellaneous system information that may not be otherwise easy to obtain from a script.
Method Name |
Arguments |
Return Type |
Description |
---|---|---|---|
FindProcess |
string |
int |
Allows you to test if a named process is currently running, and returns the process's ID if so. If the process isn't running 0 is returned. You can use wildcards or (by prefixing the pattern with regex:) regular expressions. |
Monitors |
none |
If called with no arguments, returns a Vector of Rect objects which provide information about the positions and sizes of the display monitors in the system. If called with an index argument, returns a single Rect with the information for just a particular monitor. The WorkAreas method, documented below, is sometimes what you should use instead of this. | |
MouseMonitor |
none |
int |
Returns the index of the monitor the mouse pointer is currently positioned on. |
MousePosX |
none |
int |
Returns the current x-coordinate of the mouse pointer. |
MousePosY |
none |
int |
Returns the current y-coordinate of the mouse pointer. |
ShadowBorder |
none |
Returns a Rect giving the size of the invisible border around windows. On some operating systems (e.g. Windows 10), windows may be larger than they appear: Beyond the visible edge is a border that is part of the window but invisible. This border exists for legacy compatibility, allowing window frames to appear thin while providing something thick enough to resize with the mouse. You can usually ignore the border but it is important when positioning windows next to each other, or to screen edges, where ignoring it results in gaps between windows. The Rect returned by this method is unusual: The left, right, top and bottom properties do not represent the coordinates of a rectangle but rather the width of borders (if any) on each side of a window. As a consequence, the width and height properties of the Rect are meaningless. On Windows 10, the top border is typically zero and the others are usually several pixels thick. The thickness varies by OS version, system DPI, and other factors; you should not store it to disk as it may not be correct for the system that loads it. This property is relatively expensive to calculate. You should not, for example, call the method once for each side; instead, call it once and store the Rect in a variable, then query that for each side. | |
WorkAreas |
none |
Similar to the Monitors method, documented above, except it returns the work area of each monitor rather than the full monitor area. A monitor's work area is the monitor's rectangle minus the Windows Taskbar and any other app bars (which can include docked toolbars created by Opus, or similar things added by other software). If a monitor does not have a Taskbar or other app bar docked to it, its work area will be the same as its full rectangle. |