2 * Created on Dec 12, 2003
7 * @author Alan Krempler
9 * Constants describing interactions or request from the user
11 public interface IUIElement {
13 /******************* NOTIFICATIONS: SPECIFYING PHASE ***********************/
15 public static final int UI_DUMMY_FIRST_SPECIFY = 1;
17 * During the specifying phase,
18 * try to match a problem type to the data entered so far
19 * WN //// ?items of the model entered so far
21 public static final int UI_SPECIFY_TRY_MATCH = 1;
24 * During the specifying phase,
25 * try to refine the problem type.
28 public static final int UI_SPECIFY_TRY_REFINE = 2;
31 * During the specifying phase,
32 * change the view on the CalcHead.
34 public static final int UI_SPECIFY_CHANGE_VIEW = 3;
37 * During the specifying phase,
38 * have the CalcHead completed by the math engine.
40 public static final int UI_SPECIFY_COMPLETE_CALCHEAD = 4;
43 * During the specifying phase,
44 * have the Method field of the CalcHead completed by the math engine.
46 public static final int UI_SPECIFY_COMPLETE_METHOD = 5;
49 * During the specifying phase,
50 * have the Theory field of the CalcHead completed by the math engine.
52 public static final int UI_SPECIFY_COMPLETE_THEORY = 6;
55 * During the specifying phase,
56 * have the Problem field of the CalcHead completed by the math engine.
58 public static final int UI_SPECIFY_COMPLETE_PROBLEM = 7;
61 * During the specifying phase,
62 * have the Given field of the CalcHead completed by the math engine.
64 public static final int UI_SPECIFY_COMPLETE_GIVEN = 8;
67 * During the specifying phase,
68 * have the Find field of the CalcHead completed by the math engine.
70 public static final int UI_SPECIFY_COMPLETE_FIND = 9;
73 * During the specifying phase,
74 * have the Relate field of the CalcHead completed by the math engine.
76 public static final int UI_SPECIFY_COMPLETE_RELATE = 10;
79 * During the specifying phase,
80 * have the CalcHead checked for completeness and consistency.
82 public static final int UI_SPECIFY_CHECK_CALCHEAD = 11;
85 * Leave the specifying phase, enter the solving phase
86 * and calculate the first step of the mathod.
88 public static final int UI_SPECIFY_CALCULATE_1 = 12;
91 * Leave the specifying phase, enter the solving phase
92 * and calculate until a final result is reached.
94 public static final int UI_SPECIFY_CALCULATE_ALL = 13;
96 public static final int UI_DUMMY_LAST_SPECIFY = 13;
98 /******************* NOTIFICATIONS: SOLVING PHASE ***********************/
100 public static final int UI_DUMMY_FIRST_SOLVE = 21;
103 * During the solving phase,
104 * calculate one more step.
106 public static final int UI_SOLVE_CALCULATE_1 = 21;
109 * During the solving phase,
110 * calculate until a final result is reached.
112 public static final int UI_SOLVE_CALCULATE_ALL = 22;
115 * During the solving phase,
116 * calculate until the current subproblem is solved.
118 public static final int UI_SOLVE_CALCULATE_SUBPROBLEM = 23;
121 * During the solving phase,
122 * request editing the currently active formula.
124 * WN0412 If request is conceded, do @see UI_SOLVE_EDIT_ACTIVE_FORMULA_COMPLETE
126 public static final int UI_SOLVE_EDIT_ACTIVE_FORMULA = 24;
129 * During the solving phase,
130 * notify that editing the currently active formula is finished.
131 * This implies a request for updating the CalcTree.
133 public static final int UI_SOLVE_EDIT_ACTIVE_FORMULA_COMPLETE = 25;
136 * During the solving phase,
137 * request inserting a new formula _after_ the currently active
138 * formula, making the new formula the currently active formula.
140 * At present, this does not imply editing the formula and must
141 * be requested in a separate step.
143 public static final int UI_SOLVE_APPEND_USER_FORMULA = 26;
146 * During the solving phase,
147 * request making the referened formula the currently active
150 public static final int UI_SOLVE_MOVE_ACTIVE_FORMULA = 27;
153 * During the solving phase,
154 * ask for the tactic the math engine would apply to the current formula.
156 public static final int UI_SOLVE_GET_PROPOSED_TACTIC = 30;
159 * During the solving phase,
160 * ask for a list of tactics to the current formula.
162 public static final int UI_SOLVE_GET_APPLICABLE_TACTICS = 31;
165 * During the solving phase,
166 * set the tactic to be applied to the current formula.
168 public static final int UI_SOLVE_SET_NEXT_TACTIC = 32;
171 * When entering a formula during the solving phase,
172 * request help on entering the formula.
174 public static final int UI_SOLVE_HELP_ENTERING_FORMULA = 33;
177 * During the solving phase,
178 * show which assumptions hold at the current point of calculation.
180 public static final int UI_SOLVE_SHOW_ASSUMPTIONS = 40;
183 * During the solving phase,
184 * request more detail about the currently referenced element.
186 public static final int UI_SOLVE_SHOW_DETAILS = 41;
188 public static final int UI_DUMMY_LAST_SOLVE = 41;
190 /******************* ACTIVE REQUESTS TO THE UI ***********************/
193 * Request editing the currently active formula.
194 * DG distinguishes between SPECIFY and SOLVE;
195 * thus could drop UI_SOLVE_EDIT_ACTIVE_FORMULA : int
197 public static final int UI_DO_EDIT_FORMULA = 129;
200 * Request appending a new, empty formula.
202 public static final int UI_DO_APPEND_FORMULA = 130;
205 * Activate an UI element.
207 public static final int UI_DO_ACTIVATE = 131;
210 * Deactivate an UI element.
212 public static final int UI_DO_DEACTIVATE = 132;
215 * The Dialog Guide has detached the listener and will
216 * not send any more control requests.
217 * If registered as a Data Change Listener, update notifications
220 public static final int UI_DO_DETACH = 133; //WN ??? Design ???