code: function (type, args, obj) {
              var pos = args[0];
  
              var cXY = this.getConstrainedXY(pos[0], pos[1]);
              this.cfg.setProperty("x", cXY[0], true);
              this.cfg.setProperty("y", cXY[1], true);
              this.cfg.setProperty("xy", cXY, true);
          }
docs: The default event handler executed when the moveEvent is fired, if the
  "constraintoviewport" is set to true.
  @method enforceConstraints
  @param {String} type The CustomEvent type (usually the property name)
  @param {Object[]} args The CustomEvent arguments. For configuration
  handlers, args[0] will equal the newly applied value for the property.
  @param {Object} obj The scope object. For configuration handlers,
  this will usually equal the owner.