def move(lps: Location or Pattern or str, duration: int = None, region: Rectangle = None, align: Alignment = None): """Mouse Move. :param lps: Location or Pattern or String. :param duration: Speed of hovering from current location to target. :param region: Region object in order to minimize the area. :param align: Click location alignment could be top_left, center, top_right, bottom_left, bottom_right. :return: None. """ click_location = None if isinstance(lps, Pattern): click_location = _get_pattern_click_location(lps, region, align) elif isinstance(lps, str): click_location = _get_string_click_location(lps, region, align) else: click_location = lps Mouse().move(click_location, duration)
def drag_drop(drag_from: Location or Pattern or str, drop_to: Location or Pattern or str, region: Rectangle = None, duration: float = None, align: Alignment = None): """Mouse drag and drop. :param drag_from: Starting point for drag and drop. Can be pattern, string or location. :param drop_to: Ending point for drag and drop. Can be pattern, string or location. :param region: Region object in order to minimize the area. :param duration: Speed of drag and drop. :param align: Click location alignment could be top_left, center, top_right, bottom_left, bottom_right. :return: None. """ if isinstance(drag_from, Location): loc_from = drag_from elif isinstance(drag_from, Pattern): loc_from = _get_pattern_click_location(drag_from, region, align) elif isinstance(drag_from, str): loc_from = _get_string_click_location(drag_from, region, align) else: raise ValueError( 'drag_from argument must be Location or Pattern or str, %s' % type(drag_from)) if isinstance(drop_to, Pattern): loc_to = _get_pattern_click_location(drop_to, region, align) elif isinstance(drop_to, str): loc_to = _get_string_click_location(drop_to, region, align) elif isinstance(drop_to, Location): loc_to = drop_to else: raise ValueError( 'drop_to argument must be Location or Pattern or str, %s' % type(drop_to)) Mouse().drag_and_drop(loc_from, loc_to, duration)
def scroll_right(dx: int = None, iterations: int = 1): """Scroll right mouse event.""" Mouse().scroll(abs(dx), 0, iterations)
def scroll_left(dx: int = None, iterations: int = 1): """Scroll left mouse event.""" Mouse().scroll(-abs(dx), 0, iterations)
def scroll_up(dy: int = None, iterations: int = 1): """Scroll up mouse event.""" Mouse().scroll(0, abs(dy), iterations)
def scroll_down(dy: int = None, iterations: int = 1): """Scroll down mouse event.""" Mouse().scroll(0, -abs(dy), iterations)
def mouse_reset(): """Reset Mouse coordinates to top left corner.""" Mouse().move(None, duration=0)