Source code: com/eireneh/bible/control/search/words/CommandWord.java
1
2 package com.eireneh.bible.control.search.words;
3
4 import com.eireneh.bible.passage.*;
5 import com.eireneh.bible.control.search.*;
6
7 /**
8 * CommandWord extends SearchWord to allow actions that alter a base
9 * Passage. Implementations of this interface may use the Engine to
10 * get at a default Bible (or they may have one hard coded if necessary)
11 * or to get at ParamWords that follow this command.
12 *
13 * <table border='1' cellPadding='3' cellSpacing='0' width="100%">
14 * <tr><td bgColor='white'class='TableRowColor'><font size='-7'>
15 * Distribution Licence:<br />
16 * Project B is free software; you can redistribute it
17 * and/or modify it under the terms of the GNU General Public License,
18 * version 2 as published by the Free Software Foundation.<br />
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * General Public License for more details.<br />
23 * The License is available on the internet
24 * <a href='http://www.gnu.org/copyleft/gpl.html'>here</a>, by writing to
25 * <i>Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
26 * MA 02111-1307, USA</i>, Or locally at the Licence link below.<br />
27 * The copyright to this program is held by it's authors.
28 * </font></td></tr></table>
29 * @see <a href='http://www.eireneh.com/servlets/Web'>Project B Home</a>
30 * @see docs.Licence
31 * @author Joe Walker
32 */
33 public interface CommandWord extends SearchWord
34 {
35 /**
36 * Alter a Passage in whatever manner is appropriate for
37 * this command. for example the "~" command does something
38 * like this:
39 * <code>ref.blur(engine.elements.next.getWord);</code>
40 * The "&" command looks like this:
41 * <code>ref.addAll(engine.elements.next.getPassage);</code>
42 * @param engine The controller that can provide access to the search
43 * string or a default Bible.
44 * @param ref The Passage to alter (if necessary)
45 */
46 public void updatePassage(Engine engine, Passage ref) throws SearchException;
47 }