private Color fForegroundColor;
public PythonSourceViewer(Composite parent, IVerticalRuler ruler, int styles) {
super(parent, ruler, styles);
StyledText text = this.getTextWidget();
text.addBidiSegmentListener(new BidiSegmentListener() {
public void lineGetSegments(BidiSegmentEvent event) {
try {
event.segments = getBidiLineSegments(event.lineOffset);
} catch (BadLocationException x) {
// ignore