docs: def mousePressEvent( self, event ):
          """
          Overloads the mouse press event to handle special cases and \
          bypass when the scene is in view mode.
          
          :param      event   <QMousePressEvent>
          """
          event.setAccepted(False)
          self._hotspotPressed = False
          # ignore events when the scene is in view mode
          scene = self.scene()
          if self.isLocked() or (scene and scene.inViewMode()):
              event.ignore()
              self._ignoreMouseEvents = True
              return
          
          self._ignoreMouseEvents = False
          
          # block the selection signals
          if scene:
              scene.blockSelectionSignals(True)
              
              # clear the selection
              if ( not (self.isSelected() or 
                        event.modifiers() == Qt.ControlModifier) ):
                  for item in scene.selectedItems():
                      if ( item != self ):
                          item.setSelected(False)
          
          # determine if we need to start any connections
          hotspot = self.hotspotAt(event.pos())
          if hotspot and hotspot.isEnabled():
              hotspot.slot()(event)
          
              # check if the event is accepted
              if ( event.isAccepted() ):
                  self._hotspotPressed = True
                  return
          
          # try to start the connection
          event.accept()
          self._pressTime = datetime.datetime.now()
          super(XNode, self).mousePressEvent(event)