def choose_option_under_mouse(self):
        """Choose option under mouse, if any."""
        ### get mouse position
        mouse_pos = SERVICES_NS.get_mouse_pos()

        ### iterate over option widgets, looking for the
        ### widget which collides with the mouse

        for widget in self.option_widgets:

            ## if you find the widget, execute its
            ## select method and lose the focus
            ## of this option menu (there's no need to
            ## break out of this "for loop", since loosing
            ## the focus does so by raising an exception)

            if widget.rect.collidepoint(mouse_pos):

                widget.select()
                self.lose_focus()
Choose option under mouse, if any.
nodezator/widget/optionmenu/op.py