public void reorderValue ( final InputColumn < ? > [ ] sortedValue ) { // the offset represents the search textfield and the button panel final int offset = 2 ; // reorder the visual components for ( int i = 0 ; i < sortedValue . length ; i ++ ) { final InputColumn < ? > inputColumn = sortedValue [ i ] ; final JComponent decoration = getOrCreateCheckBoxDecoration ( inputColumn , true ) ; final int position = offset + i ; add ( decoration , position ) ; } updateUI ( ) ; // recreate the _checkBoxes map final TreeMap < InputColumn < ? > , DCCheckBox < InputColumn < ? > > > checkBoxesCopy = new TreeMap <> ( _checkBoxes ) ; _checkBoxes . clear ( ) ; for ( final InputColumn < ? > inputColumn : sortedValue ) { final DCCheckBox < InputColumn < ? > > checkBox = checkBoxesCopy . get ( inputColumn ) ; _checkBoxes . put ( inputColumn , checkBox ) ; } _checkBoxes . putAll ( checkBoxesCopy ) ; setValue ( sortedValue ) ; }
Reorders the values