public Object [ ] setEnableNonFilter ( Object [ ] rgobjEnable , boolean bHasNext , boolean bBreak , boolean bAfterRequery , boolean bSelectEOF , boolean bFieldListeners ) { boolean bEnable = ( rgobjEnable == null ) ? false : true ; if ( bFieldListeners ) { if ( rgobjEnable == null ) rgobjEnable = this . setEnableFieldListeners ( bEnable ) ; else this . setEnableFieldListeners ( rgobjEnable ) ; } else { if ( rgobjEnable == null ) rgobjEnable = new Object [ 0 ] ; } FileListener listener = this . getListener ( ) ; int iCount = this . getFieldCount ( ) ; while ( listener != null ) { if ( ! ( listener instanceof org . jbundle . base . db . filter . FileFilter ) ) { if ( ! bEnable ) { rgobjEnable = Utility . growArray ( rgobjEnable , iCount + 1 , 8 ) ; if ( listener . isEnabledListener ( ) ) rgobjEnable [ iCount ] = Boolean . TRUE ; else rgobjEnable [ iCount ] = Boolean . FALSE ; listener . setEnabledListener ( bEnable ) ; } else { // Enable boolean bEnableThis = true ; if ( iCount < rgobjEnable . length ) if ( rgobjEnable [ iCount ] != null ) bEnableThis = ( ( Boolean ) rgobjEnable [ iCount ] ) . booleanValue ( ) ; listener . setEnabledListener ( bEnableThis ) ; } iCount ++ ; } listener = ( FileListener ) listener . getNextListener ( ) ; } if ( bEnable ) { if ( bAfterRequery ) this . handleRecordChange ( null , DBConstants . AFTER_REQUERY_TYPE , true ) ; if ( bBreak ) this . handleRecordChange ( null , DBConstants . CONTROL_BREAK_TYPE , true ) ; if ( bHasNext ) { this . handleValidRecord ( true ) ; this . handleRecordChange ( null , DBConstants . MOVE_NEXT_TYPE , true ) ; } if ( bSelectEOF ) this . handleRecordChange ( null , DBConstants . SELECT_EOF_TYPE , true ) ; if ( this . getTable ( ) . getCurrentTable ( ) . getRecord ( ) != this ) { // Special logic - match listeners on current record (if shared) boolean bCloneListeners = false ; boolean bMatchEnabledState = true ; boolean bSyncReferenceFields = false ; boolean bMatchSelectedState = true ; this . matchListeners ( this . getTable ( ) . getCurrentTable ( ) . getRecord ( ) , bCloneListeners , bMatchEnabledState , bSyncReferenceFields , bMatchSelectedState , true ) ; } } return rgobjEnable ; }
Enable or Disable non - filter listeners for this record .