8 import java.lang.Exception; |
8 import java.lang.Exception; |
9 |
9 |
10 public class HoraroTransporta |
10 public class HoraroTransporta |
11 implements CommandListener, ItemStateListener, Ekrano |
11 implements CommandListener, ItemStateListener, Ekrano |
12 { |
12 { |
13 private Graph radiko; |
13 private Horaro h; |
14 private Graph tagoj; |
|
15 private Graph direktoj; |
|
16 private Graph lokoj; |
|
17 private Graph sencoj; |
|
18 |
14 |
19 private Form myform; |
15 private Form myform; |
20 private ChoiceGroup ftagoj; |
16 private ChoiceGroup ftagoj; |
21 private ChoiceGroup fsenco; |
17 private ChoiceGroup fsenco; |
22 private ChoiceGroup fkomenco; |
18 private ChoiceGroup fkomenco; |
31 private Vector temporezulto; |
27 private Vector temporezulto; |
32 private Vector tmpTempoj; |
28 private Vector tmpTempoj; |
33 private Hashtable inforezulto; |
29 private Hashtable inforezulto; |
34 |
30 |
35 |
31 |
36 public HoraroTransporta(Graph _radiko, Ekrano _last) throws Exception |
32 public HoraroTransporta(Horaro _h, Ekrano _last) throws Exception |
37 { |
33 { |
38 radiko = _radiko; |
34 h = _h; |
39 last = _last; |
35 last = _last; |
40 |
|
41 tagoj = radiko.getNode("Dies"); |
|
42 lokoj = radiko.getNode("Llocs"); |
|
43 sencoj = radiko.getNode("Sentits"); |
|
44 |
36 |
45 myform = new Form("Cerca"); |
37 myform = new Form("Cerca"); |
46 |
38 |
47 /* Items */ |
39 /* Items */ |
48 ftagoj = new ChoiceGroup("Dia", ChoiceGroup.MULTIPLE); |
40 ftagoj = new ChoiceGroup("Dia", ChoiceGroup.MULTIPLE); |
81 Main.display.setCurrent(myform); |
75 Main.display.setCurrent(myform); |
82 } |
76 } |
83 |
77 |
84 private void addTagoj(ChoiceGroup g) |
78 private void addTagoj(ChoiceGroup g) |
85 { |
79 { |
86 for (int i=0; i < tagoj.size(); i++) |
80 for (int i=0; i < h.tagoj.size(); i++) |
87 g.append(tagoj.get(i).getName(), null); |
81 g.append((String) h.tagoj.elementAt(i), null); |
88 } |
82 } |
89 |
83 |
90 private void addSencoj(ChoiceGroup g) { |
84 private void addSencoj(ChoiceGroup g) { |
91 |
85 |
92 for (int i=0; i < sencoj.size(); i++) |
86 for (int i=0; i < h.sencoj.size(); i++) |
93 g.append(sencoj.get(i).getName(), null); |
87 g.append((String) h.sencoj.elementAt(i), null); |
94 } |
88 } |
95 |
89 |
96 private void addLokoj(ChoiceGroup g) { |
90 private void addLokoj(ChoiceGroup g) { |
97 |
91 |
98 for (int i=0; i < lokoj.size(); i++) |
92 for (int i=0; i < h.lokoj.size(); i++) |
99 g.append(lokoj.get(i).getName(), null); |
93 g.append((String) h.lokoj.elementAt(i), null); |
100 } |
94 } |
101 |
95 |
102 private boolean inVector(Vector v, String s) |
96 private boolean inVector(Vector v, String s) |
103 { |
97 { |
104 for (int i=0; i < v.size(); i++) |
98 for (int i=0; i < v.size(); i++) |
108 } |
102 } |
109 |
103 |
110 private void sercxiTempojn(Vector tagoj, String senco, |
104 private void sercxiTempojn(Vector tagoj, String senco, |
111 String komenco, String fino) |
105 String komenco, String fino) |
112 { |
106 { |
113 temporezulto = new Vector(); |
107 // temporezulto = new Vector(); |
114 tmpTempoj = new Vector(); |
108 // tmpTempoj = new Vector(); |
115 inforezulto = new Hashtable(); |
109 // inforezulto = new Hashtable(); |
116 |
110 // |
117 for (int i=0; i < radiko.size(); i++) |
111 // for (int i=0; i < radiko.size(); i++) |
118 { |
112 // { |
119 if (! radiko.get(i).getName().equals("Comboi")) |
113 // if (! radiko.get(i).getName().equals("Comboi")) |
120 continue; |
114 // continue; |
121 |
115 // |
122 Graph veturo = radiko.get(i); |
116 // Graph veturo = radiko.get(i); |
123 Graph gtmp; |
117 // Graph gtmp; |
124 boolean bona; |
118 // boolean bona; |
125 |
119 // |
126 String elirtempo = null, alventempo = null; |
120 // String elirtempo = null, alventempo = null; |
127 |
121 // |
128 /* Dies */ |
122 // /* Dies */ |
129 gtmp = veturo.getNode("Dies"); |
123 // gtmp = veturo.getNode("Dies"); |
130 bona = false; |
124 // bona = false; |
131 for(int j=0; j < gtmp.size(); j++) |
125 // for(int j=0; j < gtmp.size(); j++) |
132 { |
126 // { |
133 if (inVector(tagoj, gtmp.get(j).getName()) ) |
127 // if (inVector(tagoj, gtmp.get(j).getName()) ) |
134 bona = true; |
128 // bona = true; |
135 } |
129 // } |
136 if (bona != true) |
130 // if (bona != true) |
137 continue; |
131 // continue; |
138 |
132 // |
139 /* Sentits */ |
133 // /* Sentits */ |
140 gtmp = veturo.getNode("Sentit"); |
134 // gtmp = veturo.getNode("Sentit"); |
141 bona = false; |
135 // bona = false; |
142 for(int j=0; j < gtmp.size(); j++) |
136 // for(int j=0; j < gtmp.size(); j++) |
143 { |
137 // { |
144 if (senco.equals(gtmp.get(j).getName())) |
138 // if (senco.equals(gtmp.get(j).getName())) |
145 bona = true; |
139 // bona = true; |
146 } |
140 // } |
147 if (bona != true) |
141 // if (bona != true) |
148 continue; |
142 // continue; |
149 |
143 // |
150 /* Komenco kaj Fino */ |
144 // /* Komenco kaj Fino */ |
151 gtmp = veturo.getNode("Hores"); |
145 // gtmp = veturo.getNode("Hores"); |
152 for(int j=0; j < gtmp.size(); j++) |
146 // for(int j=0; j < gtmp.size(); j++) |
153 { |
147 // { |
154 String stacio = gtmp.get(j).get(0).getName(); |
148 // String stacio = gtmp.get(j).get(0).getName(); |
155 |
149 // |
156 if (stacio.equals(komenco)) |
150 // if (stacio.equals(komenco)) |
157 { |
151 // { |
158 elirtempo = gtmp.get(j).getName(); |
152 // elirtempo = gtmp.get(j).getName(); |
159 } |
153 // } |
160 else if (stacio.equals(fino)) |
154 // else if (stacio.equals(fino)) |
161 { |
155 // { |
162 alventempo = gtmp.get(j).getName(); |
156 // alventempo = gtmp.get(j).getName(); |
163 } |
157 // } |
164 } |
158 // } |
165 if (elirtempo == null || alventempo == null) |
159 // if (elirtempo == null || alventempo == null) |
166 continue; |
160 // continue; |
167 |
161 // |
168 /* Krei la informon aldonan */ |
162 // /* Krei la informon aldonan */ |
169 gtmp = veturo.getNode("Comentari"); |
163 // gtmp = veturo.getNode("Comentari"); |
170 Vector comments = new Vector(); |
164 // Vector comments = new Vector(); |
171 if (gtmp != null) |
165 // if (gtmp != null) |
172 { |
166 // { |
173 for (int j = 0; j < gtmp.size(); j++) |
167 // for (int j = 0; j < gtmp.size(); j++) |
174 { |
168 // { |
175 comments.addElement(gtmp.get(j).getName()); |
169 // comments.addElement(gtmp.get(j).getName()); |
176 } |
170 // } |
177 } |
171 // } |
178 |
172 // |
179 /* Trovita! */ |
173 // /* Trovita! */ |
180 addSortedTime(elirtempo, alventempo, comments); |
174 // addSortedTime(elirtempo, alventempo, comments); |
181 } |
175 // } |
182 |
176 // |
183 /* Free memory */ |
177 // /* Free memory */ |
184 tmpTempoj = null; |
178 // tmpTempoj = null; |
185 } |
179 } |
186 |
180 |
187 private Tempo str2Tempo(String s) |
181 private Tempo str2Tempo(String s) |
188 { |
182 { |
189 int i = s.indexOf('-'); |
183 int i = s.indexOf('-'); |
232 fsenco.getString(fsenco.getSelectedIndex()); |
227 fsenco.getString(fsenco.getSelectedIndex()); |
233 String komenco = |
228 String komenco = |
234 fkomenco.getString(fkomenco.getSelectedIndex()); |
229 fkomenco.getString(fkomenco.getSelectedIndex()); |
235 String fino = |
230 String fino = |
236 ffino.getString(ffino.getSelectedIndex()); |
231 ffino.getString(ffino.getSelectedIndex()); |
|
232 */ |
237 |
233 |
238 /* Donos rezulton en temporezulto kaj inforezulto */ |
234 /* Donos rezulton en temporezulto kaj inforezulto */ |
|
235 /* |
239 sercxiTempojn(tagoj, senco, komenco, fino); |
236 sercxiTempojn(tagoj, senco, komenco, fino); |
240 |
237 */ |
|
238 |
|
239 /* |
241 if (temporezulto.size() > 0) |
240 if (temporezulto.size() > 0) |
242 { |
241 { |
243 mytimelist = new TimeList(temporezulto, inforezulto, this); |
242 mytimelist = new TimeList(temporezulto, inforezulto, this); |
244 mytimelist.show(); |
243 mytimelist.show(); |
245 } |
244 } |
|
245 */ |
246 } else if (c == cmd_malantauxen) |
246 } else if (c == cmd_malantauxen) |
247 { |
247 { |
248 last.show(); |
248 last.show(); |
249 } |
249 } |
250 } |
250 } |
251 |
251 |
252 private void defaultTagoj() |
252 private void defaultTagoj() |
253 { |
253 { |
254 for (int i = 0; i < ftagoj.size(); i++) |
254 ftagoj.setSelectedIndex(h.defaulttago, true); |
255 { |
255 } |
256 if (tagoj.getNode(ftagoj.getString(i)).get(0) != null) |
256 |
257 ftagoj.setSelectedIndex(i, true); |
257 /* |
258 else |
|
259 ftagoj.setSelectedIndex(i, false); |
|
260 } |
|
261 } |
|
262 |
|
263 private void defaultKomencoFino() |
258 private void defaultKomencoFino() |
264 { |
259 { |
265 String elektita; |
260 String elektita; |
266 elektita = fsenco.getString(fsenco.getSelectedIndex()); |
261 elektita = fsenco.getString(fsenco.getSelectedIndex()); |
267 |
262 |