code: def qteUnbindKeyFromWidgetObject(self, keysequence,
                                       widgetObj: QtGui.QWidget):
          
          # Convert the key sequence into a QtmacsKeysequence object, or
          # raise an QtmacsKeysequenceError if the conversion is
          # impossible.
          keysequence = QtmacsKeysequence(keysequence)
  
          # Check type of input arguments.
          if not hasattr(widgetObj, '_qteAdmin'):
              msg = '<widgetObj> was probably not added with <qteAddWidget>'
              msg += ' method because it lacks the <_qteAdmin> attribute.'
              raise QtmacsOtherError(msg)
  
          # Remove the key sequence from the local key maps.
          widgetObj._qteAdmin.keyMap.qteRemoveKey(keysequence)
docs: Disassociate the macro triggered by ``keysequence`` from
          ``widgetObj``.
  
          The ``keysequence`` can be specified either as a string (eg
          '<ctrl>+x <ctrl>+f'), or a list of tuples containing the
          constants from the ``QtCore.Qt`` name space
          (eg. [(ControlModifier, Key_X), (ControlModifier, Key_F)]), or
          as a ``QtmacsKeysequence`` object.
  
          This method does not affect the key bindings of other applets.
  
          |Args|
  
          * ``keysequence`` (**str**, **list** of **tuples**,
            **QtmacsKeysequence**):
            key sequence to activate ``macroName`` for specified
            ``widgetSignature``.
          * ``widgetObj`` (**QWidget**): determines which widgets
            signature to use.
  
          |Returns|
  
          * **None**
  
          |Raises|
  
          * **QtmacsArgumentError** if at least one argument has an invalid type.
          * **QtmacsKeysequenceError** if the provided ``keysequence``
            could not be parsed.
          * **QtmacsOtherError** if ``widgetObj`` was not added with
            ``qteAddWidget``.