001: /*
002: * BufferOptions.java - Buffer-specific options dialog
003: * :tabSize=8:indentSize=8:noTabs=false:
004: * :folding=explicit:collapseFolds=1:
005: *
006: * Copyright (C) 1999, 2004 Slava Pestov
007: *
008: * This program is free software; you can redistribute it and/or
009: * modify it under the terms of the GNU General Public License
010: * as published by the Free Software Foundation; either version 2
011: * of the License, or any later version.
012: *
013: * This program is distributed in the hope that it will be useful,
014: * but WITHOUT ANY WARRANTY; without even the implied warranty of
015: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
016: * GNU General Public License for more details.
017: *
018: * You should have received a copy of the GNU General Public License
019: * along with this program; if not, write to the Free Software
020: * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
021: */
022:
023: package org.gjt.sp.jedit.gui;
024:
025: //{{{ Imports
026:
027: import javax.swing.border.EmptyBorder;
028: import javax.swing.*;
029: import java.awt.*;
030: import java.awt.event.*;
031:
032: import java.util.Arrays;
033:
034: import org.gjt.sp.jedit.buffer.FoldHandler;
035: import org.gjt.sp.jedit.buffer.JEditBuffer;
036: import org.gjt.sp.jedit.options.BufferOptionPane;
037:
038: import org.gjt.sp.jedit.*;
039:
040: //}}}
041:
042: /**
043:
044: * Buffer-specific options dialog.
045: * @author Slava Pestov
046: * @version $Id: BufferOptions.java 10801 2007-10-04 09:13:00Z kpouer $
047: *
048: */
049:
050: public class BufferOptions extends EnhancedDialog {
051: //{{{ BufferOptions constructor
052:
053: public BufferOptions(View view, Buffer buffer) {
054: super (view, jEdit.getProperty("buffer-options.title"), true);
055: this .view = view;
056: this .buffer = buffer;
057:
058: JPanel content = new JPanel(new BorderLayout());
059: content.setBorder(new EmptyBorder(12, 12, 12, 12));
060: setContentPane(content);
061:
062: ActionHandler actionListener = new ActionHandler();
063: panel = new BufferOptionPane();
064:
065: content.add(BorderLayout.NORTH, panel);
066:
067: //{{{ Buttons
068:
069: JPanel buttons = new JPanel();
070: buttons.setLayout(new BoxLayout(buttons, BoxLayout.X_AXIS));
071: buttons.setBorder(new EmptyBorder(12, 0, 0, 0));
072: buttons.add(Box.createGlue());
073:
074: ok = new JButton(jEdit.getProperty("common.ok"));
075: ok.addActionListener(actionListener);
076: getRootPane().setDefaultButton(ok);
077: buttons.add(ok);
078:
079: buttons.add(Box.createHorizontalStrut(6));
080:
081: cancel = new JButton(jEdit.getProperty("common.cancel"));
082: cancel.addActionListener(actionListener);
083: buttons.add(cancel);
084:
085: buttons.add(Box.createGlue());
086: content.add(BorderLayout.SOUTH, buttons);
087:
088: //}}}
089:
090: pack();
091: setLocationRelativeTo(view);
092: setVisible(true);
093: } //}}}
094:
095: //{{{ ok() method
096:
097: public void ok() {
098: panel.save();
099: dispose();
100: } //}}}
101:
102: //{{{ cancel() method
103:
104: public void cancel() {
105: dispose();
106: } //}}}
107:
108: //{{{ Private members
109:
110: private View view;
111: private Buffer buffer;
112: private BufferOptionPane panel;
113: private JButton ok;
114: private JButton cancel;
115:
116: //{{{ ActionHandler class
117:
118: class ActionHandler implements ActionListener {
119: //{{{ actionPerformed() method
120: public void actionPerformed(ActionEvent evt) {
121: Object source = evt.getSource();
122: if (source == ok)
123: ok();
124: else if (source == cancel)
125: cancel();
126: } //}}}
127:
128: } //}}}
129:
130: //}}}
131: }
|