r2335 - in trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing: . renderer
Author: sletellier Date: 2012-06-15 12:24:54 +0200 (Fri, 15 Jun 2012) New Revision: 2335 Url: http://nuiton.org/repositories/revision/jaxx/2335 Log: Add missing directory Added: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/renderer/ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/renderer/DateCellRenderer.java Added: trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/renderer/DateCellRenderer.java =================================================================== --- trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/renderer/DateCellRenderer.java (rev 0) +++ trunk/jaxx-widgets/src/main/java/jaxx/runtime/swing/renderer/DateCellRenderer.java 2012-06-15 10:24:54 UTC (rev 2335) @@ -0,0 +1,70 @@ +/* + * #%L + * JAXX :: Widgets + * $Id:$ + * $HeadURL:$ + * %% + * Copyright (C) 2008 - 2012 CodeLutin + * %% + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Lesser Public License for more details. + * + * You should have received a copy of the GNU General Lesser Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/lgpl-3.0.html>. + * #L% + */ +package jaxx.runtime.swing.renderer; + +import java.awt.Color; +import java.awt.Component; +import java.util.Date; +import javax.swing.JComponent; +import javax.swing.JTable; +import javax.swing.table.TableCellRenderer; +import jaxx.runtime.swing.JAXXDatePicker; + +/** + * TODO sletellier 15/09/2012 : fix color forground + * + * @author sletellier <letellier@codelutin.com> + */ +public class DateCellRenderer implements TableCellRenderer { + + protected TableCellRenderer delegate; + protected JAXXDatePicker datePicker; + + public DateCellRenderer(TableCellRenderer renderer, String datePattern) { + this.delegate = renderer; + datePicker = new JAXXDatePicker(); + datePicker.setShowPopupButton(false); + datePicker.setPatternLayout(datePattern); + } + + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + ((JComponent) delegate).setBackground(null); + JComponent render = (JComponent) delegate.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + if (isSelected) { + datePicker.setForeground(table.getSelectionForeground()); + datePicker.setBackground(table.getSelectionBackground()); + } else { + datePicker.setForeground(render.getForeground()); + datePicker.setBackground(render.getBackground()); + //fixme make this works... and remove the test + if (row % 2 == 1) { + datePicker.setBackground(Color.WHITE); + } + } + datePicker.setDate((Date) value); + return datePicker; + + } +}
participants (1)
-
sletellier@users.nuiton.org