1 package com.jsql.view.swing.panel.consoles;
2
3 import com.jsql.view.swing.util.UiUtil;
4
5 import javax.swing.*;
6 import javax.swing.table.DefaultTableCellRenderer;
7 import java.awt.*;
8
9 public class TooltipCellRenderer extends DefaultTableCellRenderer {
10
11 @Override
12 public Component getTableCellRendererComponent(
13 JTable table,
14 Object value,
15 boolean isSelected,
16 boolean hasFocus,
17 int row,
18 int column
19 ) {
20 JLabel label = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
21 label.setToolTipText(
22 String.format(
23 "<html><div style=\"font-size:10px;font-family:'%s'\">%s</div></html>",
24 UiUtil.FONT_NAME_MONO_NON_ASIAN,
25 label.getText().replaceAll("(.{100})(?!$)", "$1<br>")
26 )
27 );
28 return label;
29 }
30 }