01: /*
02: * ChooseSessionDialog.java
03: *
04: * Copyright (C) 2002 Peter Graves
05: * $Id: ChooseSessionDialog.java,v 1.1.1.1 2002/09/24 16:08:19 piso Exp $
06: *
07: * This program is free software; you can redistribute it and/or
08: * modify it under the terms of the GNU General Public License
09: * as published by the Free Software Foundation; either version 2
10: * of the License, or (at your option) any later version.
11: *
12: * This program is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15: * GNU General Public License for more details.
16: *
17: * You should have received a copy of the GNU General Public License
18: * along with this program; if not, write to the Free Software
19: * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20: */
21:
22: package org.armedbear.j;
23:
24: import java.util.ArrayList;
25: import java.util.List;
26:
27: public final class ChooseSessionDialog extends InputDialog {
28: public ChooseSessionDialog(String title) {
29: super (Editor.currentEditor(), "Name:", title, Editor
30: .getSessionName());
31: setHistory(new History("chooseSession"));
32: editor.centerDialog(this );
33: }
34:
35: protected List getCompletions(String prefix) {
36: ArrayList list = null;
37: if (prefix != null) {
38: final int prefixLength = prefix.length();
39: File dir = Session.getSessionDirectory();
40: if (dir != null) {
41: String[] names = dir.list();
42: for (int i = 0; i < names.length; i++) {
43: String name = names[i];
44: if (name.regionMatches(true, 0, prefix, 0,
45: prefixLength)) {
46: if (list == null)
47: list = new ArrayList();
48: list.add(name);
49: }
50: }
51: }
52: }
53: return list;
54: }
55: }
|