01: //Copyright (c) Hans-Joachim Daniels 2005
02: //
03: //This program is free software; you can redistribute it and/or modify
04: //it under the terms of the GNU General Public License as published by
05: //the Free Software Foundation; either version 2 of the License, or
06: //(at your option) any later version.
07: //
08: //This program is distributed in the hope that it will be useful,
09: //but WITHOUT ANY WARRANTY; without even the implied warranty of
10: //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11: //GNU General Public License for more details.
12: //
13: //You can either finde the file LICENSE or LICENSE.TXT in the source
14: //distribution or in the .jar file of this application
15: package de.uka.ilkd.key.ocl.gf;
16:
17: /**
18: * @author hdaniels
19: * For chain commands, it is not just enough, to save the command sent to GF
20: * and the respective show text.
21: * Then it would be unclear, which fun should determine the used printname.
22: * If none is given, the last one of a chain command is taken.
23: * But if a solve for example is to follow, this does not work.
24: * Thus, this class has some other fields to define the appearance of a
25: * chain command.
26: */
27: class ChainCommandTuple extends StringTuple {
28: /**
29: * the fun, that selects the printname
30: */
31: final public String fun;
32: /**
33: * Here the subcat of fun can be overwritten.
34: * Is used for the attributes of self.
35: */
36: final public String subcat;
37: /**
38: * normally, the ';;' are counted. But if we know, how many commands we
39: * chain to each other, we can skip that step and use undoSteps instead
40: */
41: final public int undoSteps;
42:
43: /**
44: * A simple setter constructor
45: * @param command The command sent to GF
46: * @param showtext The text, that GF would display if no matching
47: * printname is found.
48: * @param fun The fun that selects the used printname
49: * @param subcat the subcategory for the refinement menu, overwrites
50: * the one defined in the printname
51: * @param undoSteps how many undos are needed to undo this command
52: */
53: public ChainCommandTuple(String command, String showtext,
54: String fun, String subcat, int undoSteps) {
55: super(command, showtext);
56: this.fun = fun;
57: this.subcat = subcat;
58: this.undoSteps = undoSteps;
59: }
60:
61: }
|