code: function(target, dd, e, dragData) {
          delete this.dropOK;
          if (!target) {
              return;
          }
  
  //      Check that a field is being dragged.
          var f = dragData.field;
          if (!f) {
              return;
          }
  
  //      Check whether the data type of the column being dropped on accepts the
  //      dragged field type. If so, set dropOK flag, and highlight the target node.
          var type = target.record.fields.get(target.fieldName).type,
              types = Ext.data.Types;
          switch(type){
              case types.FLOAT:
              case types.INT:
                  if (!f.isXType('numberfield')) {
                      return;
                  }
                  break;
              case types.DATE:
                  if (!f.isXType('datefield')) {
                      return;
                  }
                  break;
              case types.BOOL:
                  if (!f.isXType('checkbox')) {
                      return;
                  }
          }
          this.dropOK = true;
          Ext.fly(target.node).addCls('x-drop-target-active');
      }
docs: On Node enter, see if it is valid for us to drop the field on that type of column.