PageRenderTime 43ms CodeModel.GetById 21ms RepoModel.GetById 1ms app.codeStats 0ms

/jEdit/tags/jedit-4-0-pre3/org/gjt/sp/jedit/options/TextAreaOptionPane.java

#
Java | 157 lines | 98 code | 19 blank | 40 comment | 0 complexity | ca7c0a9083e2cf98a2d04fe7d29019e5 MD5 | raw file
Possible License(s): BSD-3-Clause, AGPL-1.0, Apache-2.0, LGPL-2.0, LGPL-3.0, GPL-2.0, CC-BY-SA-3.0, LGPL-2.1, GPL-3.0, MPL-2.0-no-copyleft-exception, IPL-1.0
  1. /*
  2. * TextAreaOptionPane.java - Text area options panel
  3. * :tabSize=8:indentSize=8:noTabs=false:
  4. * :folding=explicit:collapseFolds=1:
  5. *
  6. * Copyright (C) 1998, 1999, 2000 Slava Pestov
  7. *
  8. * This program is free software; you can redistribute it and/or
  9. * modify it under the terms of the GNU General Public License
  10. * as published by the Free Software Foundation; either version 2
  11. * of the License, or any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU General Public License
  19. * along with this program; if not, write to the Free Software
  20. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  21. */
  22. package org.gjt.sp.jedit.options;
  23. //{{{ Imports
  24. import javax.swing.*;
  25. import java.awt.*;
  26. import org.gjt.sp.jedit.gui.FontSelector;
  27. import org.gjt.sp.jedit.*;
  28. //}}}
  29. public class TextAreaOptionPane extends AbstractOptionPane
  30. {
  31. //{{{ TextAreaOptionPane constructor
  32. public TextAreaOptionPane()
  33. {
  34. super("textarea");
  35. } //}}}
  36. //{{{ _init() method
  37. public void _init()
  38. {
  39. /* Font */
  40. font = new FontSelector(jEdit.getFontProperty("view.font"));
  41. addComponent(jEdit.getProperty("options.textarea.font"),font);
  42. /* Line highlight */
  43. lineHighlight = new JCheckBox(jEdit.getProperty("options.textarea"
  44. + ".lineHighlight"));
  45. lineHighlight.setSelected(jEdit.getBooleanProperty("view.lineHighlight"));
  46. addComponent(lineHighlight);
  47. /* Bracket highlight */
  48. bracketHighlight = new JCheckBox(jEdit.getProperty("options.textarea"
  49. + ".bracketHighlight"));
  50. bracketHighlight.setSelected(jEdit.getBooleanProperty(
  51. "view.bracketHighlight"));
  52. addComponent(bracketHighlight);
  53. /* EOL markers */
  54. eolMarkers = new JCheckBox(jEdit.getProperty("options.textarea"
  55. + ".eolMarkers"));
  56. eolMarkers.setSelected(jEdit.getBooleanProperty("view.eolMarkers"));
  57. addComponent(eolMarkers);
  58. /* Wrap guide */
  59. wrapGuide = new JCheckBox(jEdit.getProperty("options.textarea"
  60. + ".wrapGuide"));
  61. wrapGuide.setSelected(jEdit.getBooleanProperty("view.wrapGuide"));
  62. addComponent(wrapGuide);
  63. /* Blinking caret */
  64. blinkCaret = new JCheckBox(jEdit.getProperty("options.textarea"
  65. + ".blinkCaret"));
  66. blinkCaret.setSelected(jEdit.getBooleanProperty("view.caretBlink"));
  67. addComponent(blinkCaret);
  68. /* Block caret */
  69. blockCaret = new JCheckBox(jEdit.getProperty("options.textarea"
  70. + ".blockCaret"));
  71. blockCaret.setSelected(jEdit.getBooleanProperty("view.blockCaret"));
  72. addComponent(blockCaret);
  73. /* Electric borders */
  74. electricBorders = new JCheckBox(jEdit.getProperty("options.textarea"
  75. + ".electricBorders"));
  76. electricBorders.setSelected(!"0".equals(jEdit.getProperty(
  77. "view.electricBorders")));
  78. addComponent(electricBorders);
  79. /* Smart home/end */
  80. homeEnd = new JCheckBox(jEdit.getProperty("options.textarea"
  81. + ".homeEnd"));
  82. homeEnd.setSelected(jEdit.getBooleanProperty("view.homeEnd"));
  83. addComponent(homeEnd);
  84. /* Middle mouse button click pastes % register */
  85. middleMousePaste = new JCheckBox(jEdit.getProperty("options.textarea"
  86. + ".middleMousePaste"));
  87. middleMousePaste.setSelected(jEdit.getBooleanProperty(
  88. "view.middleMousePaste"));
  89. addComponent(middleMousePaste);
  90. /* Anti-aliasing */
  91. antiAlias = new JCheckBox(jEdit.getProperty("options.textarea"
  92. + ".antiAlias"));
  93. antiAlias.setSelected(jEdit.getBooleanProperty("view.antiAlias"));
  94. addComponent(antiAlias);
  95. /* Fractional font metrics */
  96. fracFontMetrics = new JCheckBox(jEdit.getProperty("options.textarea"
  97. + ".fracFontMetrics"));
  98. fracFontMetrics.setSelected(jEdit.getBooleanProperty(
  99. "view.fracFontMetrics"));
  100. addComponent(fracFontMetrics);
  101. } //}}}
  102. //{{{ _save() method
  103. public void _save()
  104. {
  105. jEdit.setFontProperty("view.font",font.getFont());
  106. jEdit.setBooleanProperty("view.lineHighlight",lineHighlight
  107. .isSelected());
  108. jEdit.setBooleanProperty("view.bracketHighlight",bracketHighlight
  109. .isSelected());
  110. jEdit.setBooleanProperty("view.eolMarkers",eolMarkers
  111. .isSelected());
  112. jEdit.setBooleanProperty("view.wrapGuide",wrapGuide
  113. .isSelected());
  114. jEdit.setBooleanProperty("view.caretBlink",blinkCaret.isSelected());
  115. jEdit.setBooleanProperty("view.blockCaret",blockCaret.isSelected());
  116. jEdit.setIntegerProperty("view.electricBorders",electricBorders
  117. .isSelected() ? 3 : 0);
  118. jEdit.setBooleanProperty("view.homeEnd",homeEnd.isSelected());
  119. jEdit.setBooleanProperty("view.middleMousePaste",
  120. middleMousePaste.isSelected());
  121. jEdit.setBooleanProperty("view.antiAlias",antiAlias.isSelected());
  122. jEdit.setBooleanProperty("view.fracFontMetrics",fracFontMetrics.isSelected());
  123. } //}}}
  124. //{{{ Private members
  125. private FontSelector font;
  126. private JCheckBox lineHighlight;
  127. private JCheckBox bracketHighlight;
  128. private JCheckBox eolMarkers;
  129. private JCheckBox wrapGuide;
  130. private JCheckBox blinkCaret;
  131. private JCheckBox blockCaret;
  132. private JCheckBox electricBorders;
  133. private JCheckBox homeEnd;
  134. private JCheckBox middleMousePaste;
  135. private JCheckBox antiAlias;
  136. private JCheckBox fracFontMetrics;
  137. //}}}
  138. }