<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def drag_is_pending(self, screen_id):
 """Ask the source if there is any drag and drop operation pending. If no drag and drop operation is pending currently, DnDAction_Ignore is returned. in screen_id of type int The screen ID where the drag and drop event occurred. out formats of type str On return the supported mime types. out allowed_actions of type :class:`DnDAction` On return the actions which are allowed. return default_action of type :class:`DnDAction` On return the default action to use. raises :class:`VBoxErrorVmError` VMM device is not available. """

        if not isinstance(screen_id, baseinteger):
            raise TypeError("screen_id can only be an instance of type baseinteger")
        (default_action, formats, allowed_actions) = self._call("dragIsPending",
                     in_p=[screen_id])
        default_action = DnDAction(default_action)
        allowed_actions = [DnDAction(a) for a in allowed_actions]
        return (default_action, formats, allowed_actions)