def jpHideAndLock(self, nodes, keyT=1, keyR=1, keyS=1, keyV=1, LockT=1, LockR=1, LockS=1, LockV=1, all=2, keyAll=2,
                      lockAll=2):  #@ReservedAssignment
        """
        SYNOPSIS
         Locks and hides attributes

             1 = Hide or Lock
             0 = Show or Unlock

             Default for all is ON (Hide and Lock)

             example:
             jpHideAndLock('root',1,0,0,0,1,0,0,0)
             Hides and Locks translate only
             jpHideAndLock('root',keyR=0)
             Hides and Locks all except rotation is still keyable




        INPUTS	*=optional
         (string) nodes:	The node(s) to work on
         (bool)* keyT: 1 = Hide translate x,y,z
         (bool)* keyR: 1 = Hide rotate x,y,z
         (bool)* keyS: 1 = Hide scale x,y,z
         (bool)* keyV: 1 = Hide visibility
         (bool)* LockT: 1 = Lock translate x,y,z
         (bool)* LockR: 1 = Lock rotate x,y,z
         (bool)* LockS: 1 = Lock scale x,y,z
         (bool)* LockV: 1 = Lock visibility
         (int)* all: 0 = show and unlock all attrs
                      1 = hide and lock all attrs
         (int)* keyAll: 0 = show all attrs
                         1 = hide all attrs
         (int)* lockAll: 0 = unlock all attrs
                          1 = lock all attrs

        RETURNS: nothing
        """
        if str(nodes.__class__) == "<type 'list'>":
            for node_ in nodes:
                self.jpHideAndLock(node_, keyT, keyR, keyS, keyV, LockT, LockR, LockS, LockV, all, keyAll, lockAll)
            return
        else:
            node = nodes
        if not objExists(node):
            self.logger.warning("jpHideAndLock: %s doesn't exist" % node)
            return

        if all == 1:
            keyT, keyR, keyS, keyV, LockT, LockR, LockS, LockV = [1, 1, 1, 1, 1, 1, 1, 1]
        elif all == 0:
            keyT, keyR, keyS, keyV, LockT, LockR, LockS, LockV = [0, 0, 0, 0, 0, 0, 0, 0]
        if keyAll == 1:
            keyT, keyR, keyS, keyV = [1, 1, 1, 1]
        if keyAll == 0:
            keyT, keyR, keyS, keyV = [0, 0, 0, 0]
        if lockAll == 1:
            LockT, LockR, LockS, LockV = [1, 1, 1, 1]
        if lockAll == 0:
            LockT, LockR, LockS, LockV = [0, 0, 0, 0]
        node = self.convertToPyNode(node)
        node.tx.setKeyable(keyT - 1)
        node.ty.setKeyable(keyT - 1)
        node.tz.setKeyable(keyT - 1)
        node.rx.setKeyable(keyR - 1)
        node.ry.setKeyable(keyR - 1)
        node.rz.setKeyable(keyR - 1)
        node.sx.setKeyable(keyS - 1)
        node.sy.setKeyable(keyS - 1)
        node.sz.setKeyable(keyS - 1)
        node.v.setKeyable(keyV - 1)

        node.tx.setLocked(LockT)
        node.ty.setLocked(LockT)
        node.tz.setLocked(LockT)
        node.rx.setLocked(LockR)
        node.ry.setLocked(LockR)
        node.rz.setLocked(LockR)
        node.sx.setLocked(LockS)
        node.sy.setLocked(LockS)
        node.sz.setLocked(LockS)
        node.v.setLocked(LockV)

        if objExists('%s.radius' % node):
            node.radius.lock()
            node.radius.setKeyable(0)  # <-- Need to do both
            node.radius.showInChannelBox(0)  # <-- Need to do both

        #disable all upper and lower rotation limits
        transformLimits(node, erx=(0, 0))
        transformLimits(node, ery=(0, 0))
        transformLimits(node, erz=(0, 0))
dataset/ETHPy150Open CountZer0/PipelineConstructionSet/python/maya/core/mayaCore.py/MayaVisibilityCore.jpHideAndLock/original