01: /*
02: * TextAreaDefaults.java - Encapsulates default values for various settings
03: * Copyright (C) 1999 Slava Pestov
04: *
05: * You may use and modify this package for any purpose. Redistribution is
06: * permitted, in both source and binary form, provided that this notice
07: * remains intact in all source distributions of this package.
08: */
09:
10: package org.syntax.jedit;
11:
12: import java.awt.Color;
13:
14: import javax.swing.JPopupMenu;
15:
16: /**
17: * Encapsulates default settings for a text area. This can be passed
18: * to the constructor once the necessary fields have been filled out.
19: * The advantage of doing this over calling lots of set() methods after
20: * creating the text area is that this method is faster.
21: */
22: public class TextAreaDefaults {
23: // private static TextAreaDefaults DEFAULTS;
24:
25: public InputHandler inputHandler;
26: public SyntaxDocument document;
27: public boolean editable;
28:
29: public boolean caretVisible;
30: public boolean caretBlinks;
31: public boolean blockCaret;
32: public int electricScroll;
33:
34: public int cols;
35: public int rows;
36: public SyntaxStyle[] styles;
37: public Color caretColor;
38: public Color selectionColor;
39: public Color lineHighlightColor;
40: public boolean lineHighlight;
41: public Color bracketHighlightColor;
42: public boolean bracketHighlight;
43: public Color eolMarkerColor;
44: public boolean eolMarkers;
45: public boolean paintInvalid;
46:
47: public JPopupMenu popup;
48:
49: /**
50: * Returns a new TextAreaDefaults object with the default values filled
51: * in.
52: */
53: public static TextAreaDefaults getDefaults() {
54: //if(DEFAULTS == null)
55: // {
56: TextAreaDefaults DEFAULTS = new TextAreaDefaults();
57:
58: DEFAULTS.inputHandler = new DefaultInputHandler();
59: DEFAULTS.inputHandler.addDefaultKeyBindings();
60: DEFAULTS.document = new SyntaxDocument();
61: DEFAULTS.editable = true;
62:
63: DEFAULTS.blockCaret = false;
64: DEFAULTS.caretVisible = true;
65: DEFAULTS.caretBlinks = true;
66: DEFAULTS.electricScroll = 3;
67:
68: DEFAULTS.cols = 80;
69: DEFAULTS.rows = 25;
70: DEFAULTS.styles = SyntaxUtilities.getDefaultSyntaxStyles();
71: DEFAULTS.caretColor = Color.black; // Color.red;
72: DEFAULTS.selectionColor = new Color(0xccccff);
73: DEFAULTS.lineHighlightColor = new Color(0xe0e0e0);
74: DEFAULTS.lineHighlight = true;
75: DEFAULTS.bracketHighlightColor = Color.black;
76: DEFAULTS.bracketHighlight = true;
77: DEFAULTS.eolMarkerColor = new Color(0x009999);
78: DEFAULTS.eolMarkers = false; // true;
79: DEFAULTS.paintInvalid = false; //true;
80: // }
81:
82: return DEFAULTS;
83: }
84: }
|