PageRenderTime 40ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 0ms

/jEdit/tags/jedit-4-1-pre5/org/gjt/sp/jedit/options/BrowserOptionPane.java

#
Java | 151 lines | 100 code | 14 blank | 37 comment | 7 complexity | 56b09c28bcac24428c8425a497e6d261 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. * BrowserOptionPane.java - Browser options panel
  3. * :tabSize=8:indentSize=8:noTabs=false:
  4. * :folding=explicit:collapseFolds=1:
  5. *
  6. * Copyright (C) 2000, 2001 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.border.EmptyBorder;
  25. import javax.swing.event.*;
  26. import javax.swing.table.*;
  27. import javax.swing.*;
  28. import java.awt.event.*;
  29. import java.awt.*;
  30. import java.util.*;
  31. import org.gjt.sp.jedit.*;
  32. //}}}
  33. //{{{ BrowserOptionPane class
  34. public class BrowserOptionPane extends AbstractOptionPane
  35. {
  36. //{{{ BrowserOptionPane constructor
  37. public BrowserOptionPane()
  38. {
  39. super("browser.general");
  40. } //}}}
  41. //{{{ _init() method
  42. public void _init()
  43. {
  44. /* Default directory */
  45. String[] dirs = {
  46. jEdit.getProperty("options.browser.general.defaultPath.buffer"),
  47. jEdit.getProperty("options.browser.general.defaultPath.home"),
  48. jEdit.getProperty("options.browser.general.defaultPath.favorites"),
  49. jEdit.getProperty("options.browser.general.defaultPath.last")
  50. };
  51. defaultDirectory = new JComboBox(dirs);
  52. String defaultDir = jEdit.getProperty("vfs.browser.defaultPath");
  53. if("buffer".equals(defaultDir))
  54. defaultDirectory.setSelectedIndex(0);
  55. else if("home".equals(defaultDir))
  56. defaultDirectory.setSelectedIndex(1);
  57. else if("favorites".equals(defaultDir))
  58. defaultDirectory.setSelectedIndex(2);
  59. else if("last".equals(defaultDir))
  60. defaultDirectory.setSelectedIndex(3);
  61. addComponent(jEdit.getProperty("options.browser.general.defaultPath"),
  62. defaultDirectory);
  63. /* Show tool bar */
  64. showToolbar = new JCheckBox(jEdit.getProperty("options.browser"
  65. + ".general.showToolbar"));
  66. showToolbar.setSelected(jEdit.getBooleanProperty("vfs.browser"
  67. + ".showToolbar"));
  68. addComponent(showToolbar);
  69. /* Show icons */
  70. showIcons = new JCheckBox(jEdit.getProperty("options.browser"
  71. + ".general.showIcons"));
  72. showIcons.setSelected(jEdit.getBooleanProperty("vfs.browser"
  73. + ".showIcons"));
  74. addComponent(showIcons);
  75. /* Show hidden files */
  76. showHiddenFiles = new JCheckBox(jEdit.getProperty("options.browser"
  77. + ".general.showHiddenFiles"));
  78. showHiddenFiles.setSelected(jEdit.getBooleanProperty("vfs.browser"
  79. + ".showHiddenFiles"));
  80. addComponent(showHiddenFiles);
  81. /* Ignore case when sorting */
  82. sortIgnoreCase = new JCheckBox(jEdit.getProperty("options.browser"
  83. + ".general.sortIgnoreCase"));
  84. sortIgnoreCase.setSelected(jEdit.getBooleanProperty("vfs.browser"
  85. + ".sortIgnoreCase"));
  86. addComponent(sortIgnoreCase);
  87. /* Mix files and directories */
  88. sortMixFilesAndDirs = new JCheckBox(jEdit.getProperty("options.browser"
  89. + ".general.sortMixFilesAndDirs"));
  90. sortMixFilesAndDirs.setSelected(jEdit.getBooleanProperty("vfs.browser"
  91. + ".sortMixFilesAndDirs"));
  92. addComponent(sortMixFilesAndDirs);
  93. /* Double-click close */
  94. doubleClickClose = new JCheckBox(jEdit.getProperty("options.browser"
  95. + ".general.doubleClickClose"));
  96. doubleClickClose.setSelected(jEdit.getBooleanProperty("vfs.browser"
  97. + ".doubleClickClose"));
  98. addComponent(doubleClickClose);
  99. /* split VFSFileDialog horizontally */
  100. splitHorizontally = new JCheckBox(jEdit.getProperty("options.browser"
  101. + ".general.splitHorizontally"));
  102. splitHorizontally.setSelected(jEdit.getBooleanProperty("vfs.browser"
  103. + ".splitHorizontally"));
  104. addComponent(splitHorizontally);
  105. } //}}}
  106. //{{{ _save() method
  107. public void _save()
  108. {
  109. String[] dirs = { "buffer", "home", "favorites", "last" };
  110. jEdit.setProperty("vfs.browser.defaultPath",dirs[defaultDirectory
  111. .getSelectedIndex()]);
  112. jEdit.setBooleanProperty("vfs.browser.showToolbar",
  113. showToolbar.isSelected());
  114. jEdit.setBooleanProperty("vfs.browser.showIcons",
  115. showIcons.isSelected());
  116. jEdit.setBooleanProperty("vfs.browser.showHiddenFiles",
  117. showHiddenFiles.isSelected());
  118. jEdit.setBooleanProperty("vfs.browser.sortIgnoreCase",
  119. sortIgnoreCase.isSelected());
  120. jEdit.setBooleanProperty("vfs.browser.sortMixFilesAndDirs",
  121. sortMixFilesAndDirs.isSelected());
  122. jEdit.setBooleanProperty("vfs.browser.doubleClickClose",
  123. doubleClickClose.isSelected());
  124. jEdit.setBooleanProperty("vfs.browser.splitHorizontally",
  125. splitHorizontally.isSelected());
  126. } //}}}
  127. //{{{ Private members
  128. private JComboBox defaultDirectory;
  129. private JCheckBox showToolbar;
  130. private JCheckBox showIcons;
  131. private JCheckBox showHiddenFiles;
  132. private JCheckBox sortIgnoreCase;
  133. private JCheckBox sortMixFilesAndDirs;
  134. private JCheckBox doubleClickClose;
  135. private JCheckBox splitHorizontally;
  136. //}}}
  137. } //}}}