2024-10-09 20:35:18 +03:00
|
|
|
package Common.Visual.Tables;
|
2024-10-08 22:33:49 +03:00
|
|
|
import Common.Visual.CommonUI;
|
|
|
|
|
import Common.Visual.Fonts.VisualiserFonts;
|
2023-09-17 22:13:42 +03:00
|
|
|
|
|
|
|
|
import javax.swing.*;
|
|
|
|
|
import javax.swing.table.TableCellRenderer;
|
|
|
|
|
import java.awt.*;
|
|
|
|
|
public class WrapTextRenderer extends JTextArea implements TableCellRenderer {
|
|
|
|
|
public WrapTextRenderer() {
|
|
|
|
|
setLineWrap(true);
|
|
|
|
|
setWrapStyleWord(true);
|
|
|
|
|
// setOpaque(false);
|
2024-10-08 22:33:49 +03:00
|
|
|
setFont(CommonUI.getTheme().Fonts.get(VisualiserFonts.Distribution).deriveFont(14.0f));
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
|
|
|
|
|
setBackground(isSelected ? table.getSelectionBackground() : table.getBackground());
|
|
|
|
|
setText((value == null) ? "" : value.toString());
|
|
|
|
|
setSize(table.getColumnModel().getColumn(column).getWidth(),
|
|
|
|
|
getPreferredSize().height);
|
|
|
|
|
if (table.getRowHeight(row) != getPreferredSize().height) {
|
|
|
|
|
table.setRowHeight(row, getPreferredSize().height);
|
|
|
|
|
}
|
|
|
|
|
return this;
|
|
|
|
|
}
|
|
|
|
|
}
|