00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00028 package org.mpcl.nui.treetable;
00029
00030 import java.awt.Color;
00031 import java.awt.Component;
00032 import javax.swing.JTable;
00033 import javax.swing.JTree;
00034 import javax.swing.tree.DefaultTreeCellRenderer;
00035 import org.mpcl.nui.TTreeTable;
00036
00037
00043 public class TEvenOddColoringTreeTableCellRenderer extends TTreeTableCellRenderer
00044 {
00045
00047 private Color tEvenRowColor;
00048
00050 private Color tOddRowColor;
00051
00052
00053
00054
00055
00056
00062 public TEvenOddColoringTreeTableCellRenderer ( TTreeTable tTREE_TABLE ,
00063 Color tEVEN_ROW_COLOR ,
00064 Color tODD_ROW_COLOR )
00065 {
00066 super (tTREE_TABLE);
00067 tEvenRowColor = tEVEN_ROW_COLOR;
00068 tOddRowColor = tODD_ROW_COLOR;
00069 }
00070
00071
00072
00073
00074
00075
00085 public Component getTableCellRendererComponent ( JTable tTABLE ,
00086 Object tVALUE ,
00087 boolean gIS_SELECTED ,
00088 boolean gHAS_FOCUS ,
00089 int iROW ,
00090 int iCOLUMN )
00091 {
00092
00093 Component tComponent;
00094
00095 tComponent =
00096 super.getTableCellRendererComponent ( tTABLE ,
00097 tVALUE ,
00098 gIS_SELECTED ,
00099 gHAS_FOCUS ,
00100 iROW ,
00101 iCOLUMN );
00102 if ( !gIS_SELECTED )
00103 {
00104 if ( (iROW % 2) == 1 )
00105 {
00106 tComponent.setBackground (tEvenRowColor);
00107 }
00108 else
00109 {
00110 if ( tOddRowColor == null )
00111 {
00112 tOddRowColor = tTABLE.getBackground();
00113 }
00114 tComponent.setBackground (tOddRowColor);
00115 }
00116 }
00117 return tComponent;
00118
00119 }
00120
00131 public Component getTreeCellRendererComponent ( JTree tTREE ,
00132 Object tVALUE ,
00133 boolean gIS_SELECTED ,
00134 boolean gIS_EXPANDED ,
00135 boolean gIS_LEAF ,
00136 int iROW ,
00137 boolean gHAS_FOCUS )
00138 {
00139
00140 DefaultTreeCellRenderer tTreeCellRenderer;
00141
00142 tTreeCellRenderer = (DefaultTreeCellRenderer)
00143 super.getTreeCellRendererComponent ( tTREE ,
00144 tVALUE ,
00145 gIS_SELECTED ,
00146 gIS_EXPANDED ,
00147 gIS_LEAF ,
00148 iROW ,
00149 gHAS_FOCUS );
00150 if ( !gIS_SELECTED )
00151 {
00152 if ( (iROW % 2) == 1 )
00153 {
00154 tTreeCellRenderer.setBackgroundNonSelectionColor (tEvenRowColor);
00155 }
00156 else
00157 {
00158 if ( tOddRowColor == null )
00159 {
00160 tOddRowColor = tTREE.getBackground();
00161 }
00162 tTreeCellRenderer.setBackgroundNonSelectionColor (tOddRowColor);
00163 }
00164 }
00165 return tTreeCellRenderer;
00166
00167 }
00168
00169 }