'Return the view widget for this item.
If the scene has multiple views, only the first view is returned.
The return value is cached; clear the cached value with forgetViewWidget().
If the view has been deleted by Qt, return None.'

def getViewWidget(self):

    if (self._viewWidget is None):
        scene = self.scene()
        if (scene is None):
            return None
        views = scene.views()
        if (len(views) < 1):
            return None
        self._viewWidget = weakref.ref(self.scene().views()[0])
    v = self._viewWidget()
    if ((v is not None) and (not isQObjectAlive(v))):
        return None
    return v
