blob: 8ef60c4bf39fad3b0f06562366be956b0dca7951 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
package cppcheckplus.text;
import java.awt.BorderLayout;
import java.awt.Font;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import cppcheckplus.control.XChartletFullScreenListenter;
public class MyTextPanel extends JPanel implements XChartletFullScreenListenter
{
private BorderLayout layout;
private boolean isFullScreen;
private JTextArea textArea;
private JScrollPane scroll;
private LineNumberHeaderView lineNumberHeader=null;
public static final int LINEHEIGHT =16;
public JTextArea getTextArea() {
return textArea;
}
public MyTextPanel()
{
layout = new BorderLayout();
setLayout(layout);
textArea=new JTextArea("");
Font x = new Font("Serif",0,LINEHEIGHT);
textArea.setFont(x);
scroll = new JScrollPane(textArea);
//scroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
//scroll.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
//scroll.setPreferredSize(new Dimension(300, 200));
if (lineNumberHeader == null) {
lineNumberHeader = new LineNumberHeaderView();
//设置行号的高度,如果和textarea的行高不匹配,可以修改此值
lineNumberHeader.setLineHeight(LINEHEIGHT+4);
}
scroll.setRowHeaderView(lineNumberHeader);
add(scroll);
}
public void initialize()
{
setLayout(layout);
add(scroll);
}
@Override
public void fullScreen(JPanel chartPanellet)
{
removeAll();
isFullScreen = !isFullScreen;
if (isFullScreen)
{
setLayout(new BorderLayout());
add(chartPanellet, "Center");
} else
{
initialize();
}
repaint();
revalidate();
}
}
|