Revision 341
minor changes to gui, plus documentation
trunk/code/projects/colonet/ColonetGUI/Colonet.xcodeproj/gmtress.pbxuser | ||
---|---|---|
163 | 163 |
PBXFileDataSource_Warnings_ColumnID, |
164 | 164 |
); |
165 | 165 |
}; |
166 |
PBXPerProjectTemplateStateSaveDate = 219194497;
|
|
167 |
PBXWorkspaceStateSaveDate = 219194497;
|
|
166 |
PBXPerProjectTemplateStateSaveDate = 219618750;
|
|
167 |
PBXWorkspaceStateSaveDate = 219618750;
|
|
168 | 168 |
}; |
169 | 169 |
perUserProjectItems = { |
170 |
A30FC0970CBD7DFA000A16EC = A30FC0970CBD7DFA000A16EC /* PBXTextBookmark */; |
|
171 |
A312666C0C9B131A00D15EBF = A312666C0C9B131A00D15EBF /* PBXTextBookmark */; |
|
172 |
A36606FF0D0E387B00B9F19F = A36606FF0D0E387B00B9F19F /* PBXTextBookmark */; |
|
173 |
A36607020D0E38C600B9F19F = A36607020D0E38C600B9F19F /* PBXTextBookmark */; |
|
174 |
A36607050D0E38E300B9F19F = A36607050D0E38E300B9F19F /* PBXTextBookmark */; |
|
175 |
A36607060D0E38E300B9F19F = A36607060D0E38E300B9F19F /* PBXTextBookmark */; |
|
176 |
A3B867610D10A4BB00B6F595 /* PBXTextBookmark */ = A3B867610D10A4BB00B6F595 /* PBXTextBookmark */; |
|
177 |
A3B867690D10AD1900B6F595 /* PBXTextBookmark */ = A3B867690D10AD1900B6F595 /* PBXTextBookmark */; |
|
178 |
A3B8676A0D10AD1900B6F595 /* PBXTextBookmark */ = A3B8676A0D10AD1900B6F595 /* PBXTextBookmark */; |
|
179 |
A3B8676B0D10AD1900B6F595 /* PBXTextBookmark */ = A3B8676B0D10AD1900B6F595 /* PBXTextBookmark */; |
|
180 |
A3B8676C0D10AD1900B6F595 /* PBXTextBookmark */ = A3B8676C0D10AD1900B6F595 /* PBXTextBookmark */; |
|
181 |
A3B8676D0D10AD1900B6F595 /* PBXTextBookmark */ = A3B8676D0D10AD1900B6F595 /* PBXTextBookmark */; |
|
182 |
A3B8676E0D10AD1900B6F595 /* PBXTextBookmark */ = A3B8676E0D10AD1900B6F595 /* PBXTextBookmark */; |
|
183 |
A3B8676F0D10AD1900B6F595 /* PBXTextBookmark */ = A3B8676F0D10AD1900B6F595 /* PBXTextBookmark */; |
|
184 |
A3B867730D10AD1900B6F595 /* PBXTextBookmark */ = A3B867730D10AD1900B6F595 /* PBXTextBookmark */; |
|
185 |
A3B8677E0D10B2C900B6F595 /* PBXTextBookmark */ = A3B8677E0D10B2C900B6F595 /* PBXTextBookmark */; |
|
186 |
A3B8677F0D10B2C900B6F595 /* PBXTextBookmark */ = A3B8677F0D10B2C900B6F595 /* PBXTextBookmark */; |
|
187 |
A3B867800D10B2C900B6F595 /* PBXTextBookmark */ = A3B867800D10B2C900B6F595 /* PBXTextBookmark */; |
|
188 |
A3B867810D10B2C900B6F595 /* PBXTextBookmark */ = A3B867810D10B2C900B6F595 /* PBXTextBookmark */; |
|
189 |
A3B867820D10B2C900B6F595 /* PBXTextBookmark */ = A3B867820D10B2C900B6F595 /* PBXTextBookmark */; |
|
190 |
A3B867830D10B2C900B6F595 /* PBXTextBookmark */ = A3B867830D10B2C900B6F595 /* PBXTextBookmark */; |
|
191 |
A3B867870D10B34A00B6F595 /* PBXTextBookmark */ = A3B867870D10B34A00B6F595 /* PBXTextBookmark */; |
|
192 |
A3B867880D10B34A00B6F595 /* PBXTextBookmark */ = A3B867880D10B34A00B6F595 /* PBXTextBookmark */; |
|
193 |
A3B8678B0D10B60C00B6F595 /* PBXTextBookmark */ = A3B8678B0D10B60C00B6F595 /* PBXTextBookmark */; |
|
194 |
A3B8678C0D10B60C00B6F595 /* PBXTextBookmark */ = A3B8678C0D10B60C00B6F595 /* PBXTextBookmark */; |
|
195 |
A3B867920D10B6D500B6F595 /* PBXTextBookmark */ = A3B867920D10B6D500B6F595 /* PBXTextBookmark */; |
|
196 |
A3B867930D10B6D500B6F595 /* PBXTextBookmark */ = A3B867930D10B6D500B6F595 /* PBXTextBookmark */; |
|
197 |
A3B867990D10B7DB00B6F595 /* PBXTextBookmark */ = A3B867990D10B7DB00B6F595 /* PBXTextBookmark */; |
|
198 |
A3B8679A0D10B7DB00B6F595 /* PBXTextBookmark */ = A3B8679A0D10B7DB00B6F595 /* PBXTextBookmark */; |
|
199 |
A3B8679E0D10B81200B6F595 /* PBXTextBookmark */ = A3B8679E0D10B81200B6F595 /* PBXTextBookmark */; |
|
200 |
A3B8679F0D10B81200B6F595 /* PBXTextBookmark */ = A3B8679F0D10B81200B6F595 /* PBXTextBookmark */; |
|
201 |
A3B867A30D10B89C00B6F595 /* PBXTextBookmark */ = A3B867A30D10B89C00B6F595 /* PBXTextBookmark */; |
|
202 |
A3B867A40D10B89C00B6F595 /* PBXTextBookmark */ = A3B867A40D10B89C00B6F595 /* PBXTextBookmark */; |
|
203 |
A3B867A90D10B90700B6F595 /* PBXTextBookmark */ = A3B867A90D10B90700B6F595 /* PBXTextBookmark */; |
|
204 |
A3B867AA0D10B90700B6F595 /* PBXTextBookmark */ = A3B867AA0D10B90700B6F595 /* PBXTextBookmark */; |
|
205 |
A3B867AF0D10B96200B6F595 /* PBXTextBookmark */ = A3B867AF0D10B96200B6F595 /* PBXTextBookmark */; |
|
206 |
A3B867B00D10B96200B6F595 /* PBXTextBookmark */ = A3B867B00D10B96200B6F595 /* PBXTextBookmark */; |
|
207 |
A3B867B40D10B9B800B6F595 /* PBXTextBookmark */ = A3B867B40D10B9B800B6F595 /* PBXTextBookmark */; |
|
208 |
A3B867B50D10B9B800B6F595 /* PBXTextBookmark */ = A3B867B50D10B9B800B6F595 /* PBXTextBookmark */; |
|
209 |
A3C65E1D0CD262BC00D77B7B = A3C65E1D0CD262BC00D77B7B /* PBXTextBookmark */; |
|
210 |
A3C65E6B0CD275C200D77B7B = A3C65E6B0CD275C200D77B7B /* PBXTextBookmark */; |
|
211 |
A3D78E650CB72FF100A79632 = A3D78E650CB72FF100A79632 /* PBXTextBookmark */; |
|
212 |
A3DAF7F40D09EC670015B97D = A3DAF7F40D09EC670015B97D /* PBXTextBookmark */; |
|
213 |
A3DAF7F50D09EC670015B97D = A3DAF7F50D09EC670015B97D /* PBXTextBookmark */; |
|
214 |
A3DAF9740D0BADA40015B97D = A3DAF9740D0BADA40015B97D /* PBXTextBookmark */; |
|
215 |
A3F558940CF276B100E3EBD1 = A3F558940CF276B100E3EBD1 /* PBXTargetBookmark */; |
|
216 |
A3FD76ED0CEBBBC10048CD0C = A3FD76ED0CEBBBC10048CD0C /* PBXTextBookmark */; |
|
170 |
A30FC0970CBD7DFA000A16EC /* PBXTextBookmark */ = A30FC0970CBD7DFA000A16EC /* PBXTextBookmark */; |
|
171 |
A312666C0C9B131A00D15EBF /* PBXTextBookmark */ = A312666C0C9B131A00D15EBF /* PBXTextBookmark */; |
|
172 |
A3C65E1D0CD262BC00D77B7B /* PBXTextBookmark */ = A3C65E1D0CD262BC00D77B7B /* PBXTextBookmark */; |
|
173 |
A3C65E6B0CD275C200D77B7B /* PBXTextBookmark */ = A3C65E6B0CD275C200D77B7B /* PBXTextBookmark */; |
|
174 |
A3D78E650CB72FF100A79632 /* PBXTextBookmark */ = A3D78E650CB72FF100A79632 /* PBXTextBookmark */; |
|
175 |
A3DAF7F40D09EC670015B97D /* PBXTextBookmark */ = A3DAF7F40D09EC670015B97D /* PBXTextBookmark */; |
|
176 |
A3DAF7F50D09EC670015B97D /* PBXTextBookmark */ = A3DAF7F50D09EC670015B97D /* PBXTextBookmark */; |
|
177 |
A3F558940CF276B100E3EBD1 /* PBXTargetBookmark */ = A3F558940CF276B100E3EBD1 /* PBXTargetBookmark */; |
|
178 |
A3F987F10D172221001CFAC4 /* PBXTextBookmark */ = A3F987F10D172221001CFAC4 /* PBXTextBookmark */; |
|
179 |
A3F987F90D17241C001CFAC4 /* PBXTextBookmark */ = A3F987F90D17241C001CFAC4 /* PBXTextBookmark */; |
|
180 |
A3F987FA0D17241C001CFAC4 /* PBXTextBookmark */ = A3F987FA0D17241C001CFAC4 /* PBXTextBookmark */; |
|
181 |
A3F987FB0D17241C001CFAC4 /* PBXTextBookmark */ = A3F987FB0D17241C001CFAC4 /* PBXTextBookmark */; |
|
182 |
A3F987FC0D17241C001CFAC4 /* PBXTextBookmark */ = A3F987FC0D17241C001CFAC4 /* PBXTextBookmark */; |
|
183 |
A3F9881D0D1739FE001CFAC4 /* PBXTextBookmark */ = A3F9881D0D1739FE001CFAC4 /* PBXTextBookmark */; |
|
184 |
A3F9881E0D1739FE001CFAC4 /* PBXTextBookmark */ = A3F9881E0D1739FE001CFAC4 /* PBXTextBookmark */; |
|
185 |
A3FD76ED0CEBBBC10048CD0C /* PBXTextBookmark */ = A3FD76ED0CEBBBC10048CD0C /* PBXTextBookmark */; |
|
217 | 186 |
}; |
218 | 187 |
sourceControlManager = A341617E0C989B510007BEF2 /* Source Control */; |
219 | 188 |
userBuildSettings = { |
... | ... | |
221 | 190 |
}; |
222 | 191 |
00E68290FEC88D7311DB9C8B /* Colonet.java */ = { |
223 | 192 |
uiCtxt = { |
224 |
sepNavIntBoundsRect = "{{0, 0}, {1011, 20524}}";
|
|
225 |
sepNavSelRange = "{42707, 0}";
|
|
226 |
sepNavVisRect = "{{0, 19146}, {1011, 546}}";
|
|
193 |
sepNavIntBoundsRect = "{{0, 0}, {1011, 21126}}";
|
|
194 |
sepNavSelRange = "{40403, 0}";
|
|
195 |
sepNavVisRect = "{{0, 18342}, {1011, 547}}";
|
|
227 | 196 |
sepNavWindowFrame = "{{38, 133}, {613, 699}}"; |
228 | 197 |
}; |
229 | 198 |
}; |
... | ... | |
276 | 245 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
277 | 246 |
name = "Colonet.java: 300"; |
278 | 247 |
rLen = 0; |
279 |
rLoc = 11027;
|
|
248 |
rLoc = 11398;
|
|
280 | 249 |
rType = 0; |
281 | 250 |
vrLen = 949; |
282 | 251 |
vrLoc = 0; |
... | ... | |
316 | 285 |
uiCtxt = { |
317 | 286 |
sepNavIntBoundsRect = "{{0, 0}, {1011, 7028}}"; |
318 | 287 |
sepNavSelRange = "{18062, 0}"; |
319 |
sepNavVisRect = "{{0, 6462}, {1011, 546}}";
|
|
288 |
sepNavVisRect = "{{0, 5211}, {1011, 547}}";
|
|
320 | 289 |
sepNavWindowFrame = "{{15, 56}, {651, 776}}"; |
321 | 290 |
}; |
322 | 291 |
}; |
323 |
A36606FF0D0E387B00B9F19F /* PBXTextBookmark */ = { |
|
324 |
isa = PBXTextBookmark; |
|
325 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
326 |
name = "Colonet.java: 1467"; |
|
327 |
rLen = 0; |
|
328 |
rLoc = 44974; |
|
329 |
rType = 0; |
|
330 |
vrLen = 393; |
|
331 |
vrLoc = 39225; |
|
332 |
}; |
|
333 |
A36607020D0E38C600B9F19F /* PBXTextBookmark */ = { |
|
334 |
isa = PBXTextBookmark; |
|
335 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
336 |
name = "Colonet.java: 1467"; |
|
337 |
rLen = 0; |
|
338 |
rLoc = 44974; |
|
339 |
rType = 0; |
|
340 |
vrLen = 1260; |
|
341 |
vrLoc = 43868; |
|
342 |
}; |
|
343 |
A36607050D0E38E300B9F19F /* PBXTextBookmark */ = { |
|
344 |
isa = PBXTextBookmark; |
|
345 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
346 |
name = "Colonet.java: 1467"; |
|
347 |
rLen = 0; |
|
348 |
rLoc = 44974; |
|
349 |
rType = 0; |
|
350 |
vrLen = 1254; |
|
351 |
vrLoc = 43868; |
|
352 |
}; |
|
353 |
A36607060D0E38E300B9F19F /* PBXTextBookmark */ = { |
|
354 |
isa = PBXTextBookmark; |
|
355 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
356 |
name = "Colonet.java: 1467"; |
|
357 |
rLen = 0; |
|
358 |
rLoc = 44974; |
|
359 |
rType = 0; |
|
360 |
vrLen = 583; |
|
361 |
vrLoc = 43868; |
|
362 |
}; |
|
363 |
A3B867610D10A4BB00B6F595 /* PBXTextBookmark */ = { |
|
364 |
isa = PBXTextBookmark; |
|
365 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
366 |
name = "Colonet.java: 1467"; |
|
367 |
rLen = 0; |
|
368 |
rLoc = 44974; |
|
369 |
rType = 0; |
|
370 |
vrLen = 583; |
|
371 |
vrLoc = 43868; |
|
372 |
}; |
|
373 |
A3B867690D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
374 |
isa = PBXTextBookmark; |
|
375 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
376 |
name = "ColonetServerInterface.java: 476"; |
|
377 |
rLen = 0; |
|
378 |
rLoc = 17519; |
|
379 |
rType = 0; |
|
380 |
vrLen = 1001; |
|
381 |
vrLoc = 17098; |
|
382 |
}; |
|
383 |
A3B8676A0D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
384 |
isa = PBXTextBookmark; |
|
385 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
386 |
name = "Colonet.java: 415"; |
|
387 |
rLen = 0; |
|
388 |
rLoc = 14077; |
|
389 |
rType = 0; |
|
390 |
vrLen = 1032; |
|
391 |
vrLoc = 13620; |
|
392 |
}; |
|
393 |
A3B8676B0D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
394 |
isa = PBXTextBookmark; |
|
395 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
396 |
name = "Colonet.java: 1467"; |
|
397 |
rLen = 0; |
|
398 |
rLoc = 44974; |
|
399 |
rType = 0; |
|
400 |
vrLen = 1262; |
|
401 |
vrLoc = 43682; |
|
402 |
}; |
|
403 |
A3B8676C0D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
404 |
isa = PBXTextBookmark; |
|
405 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
406 |
name = "ColonetServerInterface.java: 336"; |
|
407 |
rLen = 0; |
|
408 |
rLoc = 12025; |
|
409 |
rType = 0; |
|
410 |
vrLen = 1438; |
|
411 |
vrLoc = 1855; |
|
412 |
}; |
|
413 |
A3B8676D0D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
414 |
isa = PBXTextBookmark; |
|
415 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
416 |
name = "Colonet.java: 415"; |
|
417 |
rLen = 0; |
|
418 |
rLoc = 14077; |
|
419 |
rType = 0; |
|
420 |
vrLen = 1032; |
|
421 |
vrLoc = 13620; |
|
422 |
}; |
|
423 |
A3B8676E0D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
424 |
isa = PBXTextBookmark; |
|
425 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
426 |
name = "ColonetServerInterface.java: 476"; |
|
427 |
rLen = 0; |
|
428 |
rLoc = 17519; |
|
429 |
rType = 0; |
|
430 |
vrLen = 1001; |
|
431 |
vrLoc = 17098; |
|
432 |
}; |
|
433 |
A3B8676F0D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
434 |
isa = PBXTextBookmark; |
|
435 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
436 |
name = "Colonet.java: 612"; |
|
437 |
rLen = 0; |
|
438 |
rLoc = 21808; |
|
439 |
rType = 0; |
|
440 |
vrLen = 1413; |
|
441 |
vrLoc = 20474; |
|
442 |
}; |
|
443 |
A3B867730D10AD1900B6F595 /* PBXTextBookmark */ = { |
|
444 |
isa = PBXTextBookmark; |
|
445 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
446 |
name = "Colonet.java: 1469"; |
|
447 |
rLen = 0; |
|
448 |
rLoc = 44974; |
|
449 |
rType = 0; |
|
450 |
vrLen = 531; |
|
451 |
vrLoc = 43873; |
|
452 |
}; |
|
453 |
A3B8677E0D10B2C900B6F595 /* PBXTextBookmark */ = { |
|
454 |
isa = PBXTextBookmark; |
|
455 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
456 |
name = "ColonetServerInterface.java: 488"; |
|
457 |
rLen = 0; |
|
458 |
rLoc = 18062; |
|
459 |
rType = 0; |
|
460 |
vrLen = 1172; |
|
461 |
vrLoc = 17143; |
|
462 |
}; |
|
463 |
A3B8677F0D10B2C900B6F595 /* PBXTextBookmark */ = { |
|
464 |
isa = PBXTextBookmark; |
|
465 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
466 |
name = "Colonet.java: 645"; |
|
467 |
rLen = 0; |
|
468 |
rLoc = 22502; |
|
469 |
rType = 0; |
|
470 |
vrLen = 963; |
|
471 |
vrLoc = 22358; |
|
472 |
}; |
|
473 |
A3B867800D10B2C900B6F595 /* PBXTextBookmark */ = { |
|
474 |
isa = PBXTextBookmark; |
|
475 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
476 |
name = "Colonet.java: 645"; |
|
477 |
rLen = 0; |
|
478 |
rLoc = 22502; |
|
479 |
rType = 0; |
|
480 |
vrLen = 992; |
|
481 |
vrLoc = 22358; |
|
482 |
}; |
|
483 |
A3B867810D10B2C900B6F595 /* PBXTextBookmark */ = { |
|
484 |
isa = PBXTextBookmark; |
|
485 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
486 |
name = "ColonetServerInterface.java: 488"; |
|
487 |
rLen = 0; |
|
488 |
rLoc = 18062; |
|
489 |
rType = 0; |
|
490 |
vrLen = 1172; |
|
491 |
vrLoc = 17143; |
|
492 |
}; |
|
493 |
A3B867820D10B2C900B6F595 /* PBXTextBookmark */ = { |
|
494 |
isa = PBXTextBookmark; |
|
495 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
496 |
name = "Colonet.java: 612"; |
|
497 |
rLen = 0; |
|
498 |
rLoc = 21808; |
|
499 |
rType = 0; |
|
500 |
vrLen = 1382; |
|
501 |
vrLoc = 20908; |
|
502 |
}; |
|
503 |
A3B867830D10B2C900B6F595 /* PBXTextBookmark */ = { |
|
504 |
isa = PBXTextBookmark; |
|
505 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
506 |
name = "Colonet.java: 1469"; |
|
507 |
rLen = 0; |
|
508 |
rLoc = 44974; |
|
509 |
rType = 0; |
|
510 |
vrLen = 531; |
|
511 |
vrLoc = 43939; |
|
512 |
}; |
|
513 |
A3B867870D10B34A00B6F595 /* PBXTextBookmark */ = { |
|
514 |
isa = PBXTextBookmark; |
|
515 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
516 |
name = "Colonet.java: 607"; |
|
517 |
rLen = 0; |
|
518 |
rLoc = 21552; |
|
519 |
rType = 0; |
|
520 |
vrLen = 1374; |
|
521 |
vrLoc = 20908; |
|
522 |
}; |
|
523 |
A3B867880D10B34A00B6F595 /* PBXTextBookmark */ = { |
|
524 |
isa = PBXTextBookmark; |
|
525 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
526 |
name = "Colonet.java: 1469"; |
|
527 |
rLen = 0; |
|
528 |
rLoc = 44974; |
|
529 |
rType = 0; |
|
530 |
vrLen = 531; |
|
531 |
vrLoc = 43931; |
|
532 |
}; |
|
533 |
A3B8678B0D10B60C00B6F595 /* PBXTextBookmark */ = { |
|
534 |
isa = PBXTextBookmark; |
|
535 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
536 |
name = "Colonet.java: 1377"; |
|
537 |
rLen = 0; |
|
538 |
rLoc = 42742; |
|
539 |
rType = 0; |
|
540 |
vrLen = 923; |
|
541 |
vrLoc = 42472; |
|
542 |
}; |
|
543 |
A3B8678C0D10B60C00B6F595 /* PBXTextBookmark */ = { |
|
544 |
isa = PBXTextBookmark; |
|
545 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
546 |
name = "Colonet.java: 1466"; |
|
547 |
rLen = 0; |
|
548 |
rLoc = 44974; |
|
549 |
rType = 0; |
|
550 |
vrLen = 600; |
|
551 |
vrLoc = 43625; |
|
552 |
}; |
|
553 |
A3B867920D10B6D500B6F595 /* PBXTextBookmark */ = { |
|
554 |
isa = PBXTextBookmark; |
|
555 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
556 |
name = "Colonet.java: 614"; |
|
557 |
rLen = 0; |
|
558 |
rLoc = 21808; |
|
559 |
rType = 0; |
|
560 |
vrLen = 1471; |
|
561 |
vrLoc = 20528; |
|
562 |
}; |
|
563 |
A3B867930D10B6D500B6F595 /* PBXTextBookmark */ = { |
|
564 |
isa = PBXTextBookmark; |
|
565 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
566 |
name = "Colonet.java: 1468"; |
|
567 |
rLen = 0; |
|
568 |
rLoc = 44974; |
|
569 |
rType = 0; |
|
570 |
vrLen = 567; |
|
571 |
vrLoc = 43642; |
|
572 |
}; |
|
573 |
A3B867990D10B7DB00B6F595 /* PBXTextBookmark */ = { |
|
574 |
isa = PBXTextBookmark; |
|
575 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
576 |
name = "Colonet.java: 216"; |
|
577 |
rLen = 0; |
|
578 |
rLoc = 6832; |
|
579 |
rType = 0; |
|
580 |
vrLen = 1729; |
|
581 |
vrLoc = 5999; |
|
582 |
}; |
|
583 |
A3B8679A0D10B7DB00B6F595 /* PBXTextBookmark */ = { |
|
584 |
isa = PBXTextBookmark; |
|
585 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
586 |
name = "Colonet.java: 1470"; |
|
587 |
rLen = 0; |
|
588 |
rLoc = 44974; |
|
589 |
rType = 0; |
|
590 |
vrLen = 501; |
|
591 |
vrLoc = 43603; |
|
592 |
}; |
|
593 |
A3B8679E0D10B81200B6F595 /* PBXTextBookmark */ = { |
|
594 |
isa = PBXTextBookmark; |
|
595 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
596 |
name = "Colonet.java: 215"; |
|
597 |
rLen = 0; |
|
598 |
rLoc = 6832; |
|
599 |
rType = 0; |
|
600 |
vrLen = 1717; |
|
601 |
vrLoc = 5999; |
|
602 |
}; |
|
603 |
A3B8679F0D10B81200B6F595 /* PBXTextBookmark */ = { |
|
604 |
isa = PBXTextBookmark; |
|
605 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
606 |
name = "Colonet.java: 1470"; |
|
607 |
rLen = 0; |
|
608 |
rLoc = 44974; |
|
609 |
rType = 0; |
|
610 |
vrLen = 501; |
|
611 |
vrLoc = 43591; |
|
612 |
}; |
|
613 |
A3B867A30D10B89C00B6F595 /* PBXTextBookmark */ = { |
|
614 |
isa = PBXTextBookmark; |
|
615 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
616 |
name = "Colonet.java: 235"; |
|
617 |
rLen = 0; |
|
618 |
rLoc = 7641; |
|
619 |
rType = 0; |
|
620 |
vrLen = 1740; |
|
621 |
vrLoc = 6079; |
|
622 |
}; |
|
623 |
A3B867A40D10B89C00B6F595 /* PBXTextBookmark */ = { |
|
624 |
isa = PBXTextBookmark; |
|
625 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
626 |
name = "Colonet.java: 1472"; |
|
627 |
rLen = 0; |
|
628 |
rLoc = 44974; |
|
629 |
rType = 0; |
|
630 |
vrLen = 455; |
|
631 |
vrLoc = 43668; |
|
632 |
}; |
|
633 |
A3B867A90D10B90700B6F595 /* PBXTextBookmark */ = { |
|
634 |
isa = PBXTextBookmark; |
|
635 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
636 |
name = "Colonet.java: 216"; |
|
637 |
rLen = 0; |
|
638 |
rLoc = 6832; |
|
639 |
rType = 0; |
|
640 |
vrLen = 1718; |
|
641 |
vrLoc = 6079; |
|
642 |
}; |
|
643 |
A3B867AA0D10B90700B6F595 /* PBXTextBookmark */ = { |
|
644 |
isa = PBXTextBookmark; |
|
645 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
646 |
name = "Colonet.java: 1469"; |
|
647 |
rLen = 0; |
|
648 |
rLoc = 44974; |
|
649 |
rType = 0; |
|
650 |
vrLen = 531; |
|
651 |
vrLoc = 43547; |
|
652 |
}; |
|
653 |
A3B867AF0D10B96200B6F595 /* PBXTextBookmark */ = { |
|
654 |
isa = PBXTextBookmark; |
|
655 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
656 |
name = "Colonet.java: 214"; |
|
657 |
rLen = 0; |
|
658 |
rLoc = 6718; |
|
659 |
rType = 0; |
|
660 |
vrLen = 1720; |
|
661 |
vrLoc = 5912; |
|
662 |
}; |
|
663 |
A3B867B00D10B96200B6F595 /* PBXTextBookmark */ = { |
|
664 |
isa = PBXTextBookmark; |
|
665 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
666 |
name = "Colonet.java: 1469"; |
|
667 |
rLen = 0; |
|
668 |
rLoc = 44974; |
|
669 |
rType = 0; |
|
670 |
vrLen = 531; |
|
671 |
vrLoc = 43548; |
|
672 |
}; |
|
673 |
A3B867B40D10B9B800B6F595 /* PBXTextBookmark */ = { |
|
674 |
isa = PBXTextBookmark; |
|
675 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
676 |
name = "Colonet.java: 214"; |
|
677 |
rLen = 0; |
|
678 |
rLoc = 6681; |
|
679 |
rType = 0; |
|
680 |
vrLen = 1754; |
|
681 |
vrLoc = 5912; |
|
682 |
}; |
|
683 |
A3B867B50D10B9B800B6F595 /* PBXTextBookmark */ = { |
|
684 |
isa = PBXTextBookmark; |
|
685 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
686 |
name = "Colonet.java: 1469"; |
|
687 |
rLen = 0; |
|
688 |
rLoc = 44974; |
|
689 |
rType = 0; |
|
690 |
vrLen = 531; |
|
691 |
vrLoc = 43582; |
|
692 |
}; |
|
693 | 292 |
A3C65E1D0CD262BC00D77B7B /* PBXTextBookmark */ = { |
694 | 293 |
isa = PBXTextBookmark; |
695 | 294 |
fRef = 00E68291FEC88ED911DB9C8B /* index.html */; |
... | ... | |
746 | 345 |
vrLen = 912; |
747 | 346 |
vrLoc = 5611; |
748 | 347 |
}; |
749 |
A3DAF9740D0BADA40015B97D /* PBXTextBookmark */ = { |
|
750 |
isa = PBXTextBookmark; |
|
751 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
752 |
name = "ColonetServerInterface.java: 336"; |
|
753 |
rLen = 0; |
|
754 |
rLoc = 12025; |
|
755 |
rType = 0; |
|
756 |
vrLen = 1463; |
|
757 |
vrLoc = 1830; |
|
758 |
}; |
|
759 | 348 |
A3F558860CF2766C00E3EBD1 /* Sources */ = { |
760 | 349 |
isa = PBXSourcesBuildPhase; |
761 | 350 |
buildActionMask = 2147483647; |
... | ... | |
883 | 472 |
isa = PBXTargetBookmark; |
884 | 473 |
trg = A3F558890CF2766C00E3EBD1 /* doc */; |
885 | 474 |
}; |
475 |
A3F987F10D172221001CFAC4 /* PBXTextBookmark */ = { |
|
476 |
isa = PBXTextBookmark; |
|
477 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
478 |
name = "Colonet.java: 286"; |
|
479 |
rLen = 0; |
|
480 |
rLoc = 10065; |
|
481 |
rType = 0; |
|
482 |
vrLen = 936; |
|
483 |
vrLoc = 98; |
|
484 |
}; |
|
485 |
A3F987F90D17241C001CFAC4 /* PBXTextBookmark */ = { |
|
486 |
isa = PBXTextBookmark; |
|
487 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
488 |
name = "ColonetServerInterface.java: 488"; |
|
489 |
rLen = 0; |
|
490 |
rLoc = 18062; |
|
491 |
rType = 0; |
|
492 |
vrLen = 2083; |
|
493 |
vrLoc = 13856; |
|
494 |
}; |
|
495 |
A3F987FA0D17241C001CFAC4 /* PBXTextBookmark */ = { |
|
496 |
isa = PBXTextBookmark; |
|
497 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
498 |
name = "Colonet.java: 1461"; |
|
499 |
rLen = 0; |
|
500 |
rLoc = 46005; |
|
501 |
rType = 0; |
|
502 |
vrLen = 1308; |
|
503 |
vrLoc = 44135; |
|
504 |
}; |
|
505 |
A3F987FB0D17241C001CFAC4 /* PBXTextBookmark */ = { |
|
506 |
isa = PBXTextBookmark; |
|
507 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
508 |
name = "Colonet.java: 1461"; |
|
509 |
rLen = 0; |
|
510 |
rLoc = 46005; |
|
511 |
rType = 0; |
|
512 |
vrLen = 1308; |
|
513 |
vrLoc = 44135; |
|
514 |
}; |
|
515 |
A3F987FC0D17241C001CFAC4 /* PBXTextBookmark */ = { |
|
516 |
isa = PBXTextBookmark; |
|
517 |
fRef = A34161900C989CB30007BEF2 /* ColonetServerInterface.java */; |
|
518 |
name = "ColonetServerInterface.java: 488"; |
|
519 |
rLen = 0; |
|
520 |
rLoc = 18062; |
|
521 |
rType = 0; |
|
522 |
vrLen = 2083; |
|
523 |
vrLoc = 13856; |
|
524 |
}; |
|
525 |
A3F9881D0D1739FE001CFAC4 /* PBXTextBookmark */ = { |
|
526 |
isa = PBXTextBookmark; |
|
527 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
528 |
name = "Colonet.java: 1307"; |
|
529 |
rLen = 0; |
|
530 |
rLoc = 40403; |
|
531 |
rType = 0; |
|
532 |
vrLen = 1434; |
|
533 |
vrLoc = 40575; |
|
534 |
}; |
|
535 |
A3F9881E0D1739FE001CFAC4 /* PBXTextBookmark */ = { |
|
536 |
isa = PBXTextBookmark; |
|
537 |
fRef = 00E68290FEC88D7311DB9C8B /* Colonet.java */; |
|
538 |
name = "Colonet.java: 35"; |
|
539 |
rLen = 0; |
|
540 |
rLoc = 929; |
|
541 |
rType = 0; |
|
542 |
vrLen = 485; |
|
543 |
vrLoc = 630; |
|
544 |
}; |
|
886 | 545 |
A3FD76ED0CEBBBC10048CD0C /* PBXTextBookmark */ = { |
887 | 546 |
isa = PBXTextBookmark; |
888 | 547 |
fRef = A3FD76EE0CEBBBC10048CD0C /* index.html */; |
trunk/code/projects/colonet/ColonetGUI/Colonet.xcodeproj/gmtress.perspective | ||
---|---|---|
324 | 324 |
<key>_historyCapacity</key> |
325 | 325 |
<integer>0</integer> |
326 | 326 |
<key>bookmark</key> |
327 |
<string>A3B867B40D10B9B800B6F595</string>
|
|
327 |
<string>A3F9881D0D1739FE001CFAC4</string>
|
|
328 | 328 |
<key>history</key> |
329 | 329 |
<array> |
330 | 330 |
<string>A3C65E6B0CD275C200D77B7B</string> |
331 | 331 |
<string>A3FD76ED0CEBBBC10048CD0C</string> |
332 | 332 |
<string>A3F558940CF276B100E3EBD1</string> |
333 | 333 |
<string>A3DAF7F40D09EC670015B97D</string> |
334 |
<string>A3B8677E0D10B2C900B6F595</string>
|
|
335 |
<string>A3B8677F0D10B2C900B6F595</string>
|
|
334 |
<string>A3F987F90D17241C001CFAC4</string>
|
|
335 |
<string>A3F987FA0D17241C001CFAC4</string>
|
|
336 | 336 |
</array> |
337 | 337 |
<key>prevStack</key> |
338 | 338 |
<array> |
... | ... | |
340 | 340 |
<string>A3D78E650CB72FF100A79632</string> |
341 | 341 |
<string>A3C65E1D0CD262BC00D77B7B</string> |
342 | 342 |
<string>A30FC0970CBD7DFA000A16EC</string> |
343 |
<string>A3B8676B0D10AD1900B6F595</string> |
|
344 |
<string>A3B8676C0D10AD1900B6F595</string> |
|
345 |
<string>A3B8676D0D10AD1900B6F595</string> |
|
346 |
<string>A3B8676E0D10AD1900B6F595</string> |
|
347 |
<string>A3B867800D10B2C900B6F595</string> |
|
348 |
<string>A3B867810D10B2C900B6F595</string> |
|
343 |
<string>A3F987FB0D17241C001CFAC4</string> |
|
344 |
<string>A3F987FC0D17241C001CFAC4</string> |
|
349 | 345 |
</array> |
350 | 346 |
</dict> |
351 | 347 |
<key>SplitCount</key> |
... | ... | |
359 | 355 |
<key>GeometryConfiguration</key> |
360 | 356 |
<dict> |
361 | 357 |
<key>Frame</key> |
362 |
<string>{{0, 0}, {1058, 578}}</string>
|
|
358 |
<string>{{0, 0}, {1058, 579}}</string>
|
|
363 | 359 |
<key>RubberWindowFrame</key> |
364 | 360 |
<string>0 112 1280 720 0 0 1280 832 </string> |
365 | 361 |
</dict> |
366 | 362 |
<key>Module</key> |
367 | 363 |
<string>PBXNavigatorGroup</string> |
368 | 364 |
<key>Proportion</key> |
369 |
<string>578pt</string>
|
|
365 |
<string>579pt</string>
|
|
370 | 366 |
</dict> |
371 | 367 |
<dict> |
372 | 368 |
<key>Proportion</key> |
... | ... | |
445 | 441 |
</array> |
446 | 442 |
<key>TableOfContents</key> |
447 | 443 |
<array> |
448 |
<string>A3B867700D10AD1900B6F595</string>
|
|
444 |
<string>A3F987B40D171DE6001CFAC4</string>
|
|
449 | 445 |
<string>1CA23ED40692098700951B8B</string> |
450 |
<string>A3B867710D10AD1900B6F595</string>
|
|
446 |
<string>A3F987B50D171DE6001CFAC4</string>
|
|
451 | 447 |
<string>A34161A50C989E610007BEF2</string> |
452 |
<string>A3B867720D10AD1900B6F595</string>
|
|
448 |
<string>A3F987B60D171DE6001CFAC4</string>
|
|
453 | 449 |
<string>1CA23EDF0692099D00951B8B</string> |
454 | 450 |
<string>1CA23EE00692099D00951B8B</string> |
455 | 451 |
<string>1CA23EE10692099D00951B8B</string> |
... | ... | |
514 | 510 |
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> |
515 | 511 |
<array> |
516 | 512 |
<array> |
517 |
<integer>6</integer> |
|
518 |
<integer>5</integer> |
|
513 |
<integer>1</integer> |
|
519 | 514 |
<integer>0</integer> |
520 | 515 |
</array> |
521 | 516 |
</array> |
... | ... | |
563 | 558 |
<key>_historyCapacity</key> |
564 | 559 |
<integer>0</integer> |
565 | 560 |
<key>bookmark</key> |
566 |
<string>A3B867B50D10B9B800B6F595</string>
|
|
561 |
<string>A3F9881E0D1739FE001CFAC4</string>
|
|
567 | 562 |
<key>history</key> |
568 | 563 |
<array> |
569 | 564 |
<string>A3FD76ED0CEBBBC10048CD0C</string> |
... | ... | |
571 | 566 |
<string>A3F558940CF276B100E3EBD1</string> |
572 | 567 |
<string>A3DAF7F40D09EC670015B97D</string> |
573 | 568 |
<string>A3DAF7F50D09EC670015B97D</string> |
574 |
<string>A36607060D0E38E300B9F19F</string>
|
|
569 |
<string>A3F987F10D172221001CFAC4</string>
|
|
575 | 570 |
</array> |
576 | 571 |
<key>prevStack</key> |
577 | 572 |
<array> |
... | ... | |
699 | 694 |
</array> |
700 | 695 |
<key>TableOfContents</key> |
701 | 696 |
<array> |
702 |
<string>A3B867740D10AD1900B6F595</string>
|
|
697 |
<string>A3F987B80D171DE6001CFAC4</string>
|
|
703 | 698 |
<string>1CA23EE50692099D00951B8B</string> |
704 |
<string>A3B867750D10AD1900B6F595</string>
|
|
699 |
<string>A3F987B90D171DE6001CFAC4</string>
|
|
705 | 700 |
<string>A34161AC0C989F140007BEF2</string> |
706 |
<string>A3B867760D10AD1900B6F595</string>
|
|
701 |
<string>A3F987BA0D171DE6001CFAC4</string>
|
|
707 | 702 |
<string>XCMainBuildResultsModuleGUID</string> |
708 | 703 |
<string>1CA23EE80692099D00951B8B</string> |
709 |
<string>A3B867770D10AD1900B6F595</string>
|
|
704 |
<string>A3F987BB0D171DE6001CFAC4</string>
|
|
710 | 705 |
</array> |
711 | 706 |
<key>ToolbarConfiguration</key> |
712 | 707 |
<string>xcode.toolbar.config.buildAndRun</string> |
... | ... | |
874 | 869 |
<key>WindowJustification</key> |
875 | 870 |
<integer>5</integer> |
876 | 871 |
<key>WindowOrderList</key> |
877 |
<array/> |
|
872 |
<array> |
|
873 |
<string>/Users/gmtress/Documents/Colony/roboclub_repository/colony/trunk/code/projects/colonet/ColonetGUI/Colonet.xcodeproj</string> |
|
874 |
</array> |
|
878 | 875 |
<key>WindowString</key> |
879 | 876 |
<string>0 112 1280 720 0 0 1280 832 </string> |
880 | 877 |
<key>WindowTools</key> |
trunk/code/projects/colonet/ColonetGUI/Colonet.java | ||
---|---|---|
17 | 17 |
* The Colonet Graphical User Interface Applet for use locally and over an internet connection. |
18 | 18 |
* @author Gregory Tress |
19 | 19 |
* |
20 |
* |
|
20 |
* To generate javadoc on this file or other java files, use javadoc *.java -d doc, where doc |
|
21 |
* is the name of the folder into which the files should be written. |
|
21 | 22 |
*/ |
22 | 23 |
public class Colonet extends JApplet implements ActionListener, MouseInputListener, KeyListener, Runnable { |
23 | 24 |
|
25 |
// Used for the robot graph |
|
24 | 26 |
final int CANVAS_SIZE = 500; //the applet may be slow if the canvas gets too large |
25 | 27 |
final int BUFFER = 50; |
26 | 28 |
final int RADIUS = 30; |
29 |
|
|
30 |
//Used for the robot controller |
|
31 |
final int VECTOR_CONTROLLER_HEIGHT = 220; |
|
32 |
final int VECTOR_CONTROLLER_WIDTH = 200; |
|
33 |
|
|
27 | 34 |
|
28 | 35 |
// Connection |
29 | 36 |
JTextField txtHost; |
... | ... | |
144 | 151 |
image = gc.createCompatibleImage(CANVAS_SIZE,CANVAS_SIZE); |
145 | 152 |
canvas = image.createGraphics(); |
146 | 153 |
canvas.setStroke(new BasicStroke(2)); //set pen width |
147 |
panelGraph = new GraphicsPanel(false, image); //set automatic double-buffering to false. we are doing it manually.
|
|
154 |
panelGraph = new GraphicsPanel(image, false); //set automatic double-buffering to false. we are doing it manually.
|
|
148 | 155 |
panelWebcam = new WebcamPanel(); |
149 | 156 |
tabPaneMain = new JTabbedPane(); |
150 | 157 |
tabPaneMain.add(panelWebcam, "Webcam"); |
... | ... | |
199 | 206 |
panelRobotDirectionButtons.add(btnL); |
200 | 207 |
panelRobotDirectionButtons.add(btnR); |
201 | 208 |
|
202 |
imageVectorControl = gc.createCompatibleImage(395, 220);
|
|
209 |
imageVectorControl = gc.createCompatibleImage(VECTOR_CONTROLLER_WIDTH, VECTOR_CONTROLLER_HEIGHT);
|
|
203 | 210 |
vectorController = new VectorController(imageVectorControl); |
204 | 211 |
panelRobotDirection.setLayout(new BorderLayout()); |
205 | 212 |
panelRobotDirection.add(vectorController, BorderLayout.CENTER); |
... | ... | |
211 | 218 |
cmbRobotNum = new JComboBox(); |
212 | 219 |
// Battery subset |
213 | 220 |
lblBattery = new JLabel(); |
214 |
batteryIcon = new BatteryIcon(50);
|
|
221 |
batteryIcon = new BatteryIcon(25);
|
|
215 | 222 |
//batteryIcon = new BatteryIcon(50, lblBattery.getMaximumSize().height, lblBattery.getMaximumSize().height); |
216 | 223 |
lblBattery = new JLabel(batteryIcon); |
217 | 224 |
btnCommand_StopTask = new JButton("Stop Current Task"); |
... | ... | |
273 | 280 |
panelControl = new JPanel(); |
274 | 281 |
panelControl.setLayout(new GridLayout(1,1)); |
275 | 282 |
tabPaneControl = new JTabbedPane(JTabbedPane.TOP); |
276 |
tabPaneControl.setPreferredSize(new Dimension(330, 0));
|
|
283 |
tabPaneControl.setPreferredSize(new Dimension(VECTOR_CONTROLLER_WIDTH, 0));
|
|
277 | 284 |
tabPaneControl.addTab("Connection", panelServerInterface); |
278 | 285 |
tabPaneControl.addTab("Robots", panelRobotControl); |
279 | 286 |
tabPaneControl.addTab("Tasks", panelTaskManager); |
... | ... | |
967 | 974 |
|
968 | 975 |
/* |
969 | 976 |
* GraphicsPanel class |
970 |
* Enables more efficient image handling in a component-controlled environment
|
|
977 |
* An extension of JPanel, designed for holding an image that will be repainted regularly.
|
|
971 | 978 |
*/ |
972 | 979 |
class GraphicsPanel extends JPanel { |
973 | 980 |
protected Image img; |
... | ... | |
977 | 984 |
this.img = img; |
978 | 985 |
} |
979 | 986 |
|
980 |
public GraphicsPanel (boolean isDoubleBuffered, Image img) {
|
|
987 |
public GraphicsPanel (Image img, boolean isDoubleBuffered) {
|
|
981 | 988 |
super(isDoubleBuffered); |
982 | 989 |
this.img = img; |
983 | 990 |
} |
... | ... | |
1203 | 1210 |
return v; |
1204 | 1211 |
} |
1205 | 1212 |
|
1213 |
/** |
|
1214 |
* Returns the angle of the control vector in positive degrees west of north, |
|
1215 |
* or negative degrees east of north, whichever is less than or equal to |
|
1216 |
* 180 degrees total. |
|
1217 |
*/ |
|
1206 | 1218 |
public int getAngle () { |
1207 | 1219 |
int dx = x - cx; |
1208 | 1220 |
int dy = cy - y; |
1221 |
// find reference angle in radians |
|
1209 | 1222 |
double theta = Math.atan2(Math.abs(dx), Math.abs(dy)); |
1210 |
theta = (int) (1.0 * theta * 180 / Math.PI); //transform to degrees |
|
1211 |
if (dy < 0) |
|
1212 |
theta = 180 - theta; |
|
1213 |
theta *= Math.signum(dx); |
|
1223 |
// transform to degrees |
|
1224 |
theta = theta * 180 / Math.PI; |
|
1225 |
// adjust for quadrant |
|
1226 |
if (dx < 0 && dy < 0) |
|
1227 |
theta = 90 + theta; |
|
1228 |
else if (dx < 0 && dy >= 0) |
|
1229 |
theta = 90 - theta; |
|
1230 |
else if (dx >= 0 && dy < 0) |
|
1231 |
theta = -90 - theta; |
|
1232 |
else |
|
1233 |
theta = -90 + theta; |
|
1214 | 1234 |
return (int) theta; |
1215 | 1235 |
} |
1216 | 1236 |
|
... | ... | |
1247 | 1267 |
} |
1248 | 1268 |
|
1249 | 1269 |
public void sendToServer () { |
1250 |
//log.append("Attempitng to send angle = " + vectorController.getAngle() + ", velocity = " + vectorController.getVelocity() + "\n");
|
|
1270 |
System.out.println("Attempting to send angle = " + getAngle() + ", speed = " + getSpeed() + "");
|
|
1251 | 1271 |
String dest = ColonetServerInterface.GLOBAL_DEST; |
1252 | 1272 |
if (cmbRobotNum != null && cmbRobotNum.getSelectedIndex() > 0) |
1253 | 1273 |
dest = "" + (cmbRobotNum.getSelectedIndex()-1); |
... | ... | |
1256 | 1276 |
if (cx == 0 && cy == 0) { |
1257 | 1277 |
csi.sendData(ColonetServerInterface.MOTORS_OFF, dest); |
1258 | 1278 |
} else { |
1279 |
csi.sendData(ColonetServerInterface.MOVE + " " + getSpeed() + " " + getAngle(), dest); |
|
1280 |
/* |
|
1259 | 1281 |
//Directional commands |
1260 |
|
|
1261 | 1282 |
if (x > cx && y == cy) { //move right |
1262 | 1283 |
csi.sendData(ColonetServerInterface.MOTOR2_SET + " 0 200", dest); |
1263 | 1284 |
csi.sendData(ColonetServerInterface.MOTOR1_SET + " 1 200", dest); |
... | ... | |
1274 | 1295 |
csi.sendData(ColonetServerInterface.MOTOR2_SET + " 1 0", dest); |
1275 | 1296 |
csi.sendData(ColonetServerInterface.MOTOR1_SET + " 1 0", dest); |
1276 | 1297 |
} |
1277 |
|
|
1278 |
|
|
1298 |
*/ |
|
1279 | 1299 |
} |
1280 | 1300 |
} |
1281 |
|
|
1282 |
//The move command doesn't really work...or does it? |
|
1283 |
/* |
|
1284 |
csi.sendData(ColonetServerInterface.MOVE + " " + |
|
1285 |
vectorController.getSpeed() + " " + |
|
1286 |
vectorController.getAngle(), dest); |
|
1287 |
*/ |
|
1288 |
|
|
1289 | 1301 |
} |
1290 | 1302 |
|
1291 | 1303 |
} |
1292 | 1304 |
|
1293 | 1305 |
/* |
1294 | 1306 |
* TaskAddWindow class |
1295 |
* makes it easy to add tasks to the queue
|
|
1307 |
* A window that provides a simple way to add tasks to a task queue.
|
|
1296 | 1308 |
*/ |
1297 | 1309 |
class TaskAddWindow extends JFrame implements ActionListener, ListSelectionListener { |
1298 | 1310 |
JPanel panelButtons; |
... | ... | |
1406 | 1418 |
|
1407 | 1419 |
} |
1408 | 1420 |
|
1409 |
class BatteryIcon implements Icon{ |
|
1421 |
class BatteryIcon implements Icon {
|
|
1410 | 1422 |
private int width; |
1411 | 1423 |
private int height; |
1412 | 1424 |
private int level; |
1413 | 1425 |
|
1426 |
/** |
|
1427 |
* Constructs a new BatteryIcon with all default parameters. |
|
1428 |
* Default width and height are 50. |
|
1429 |
* Default level is 100. |
|
1430 |
*/ |
|
1414 | 1431 |
public BatteryIcon(){ |
1415 |
width = 100; |
|
1416 |
height =100; |
|
1417 |
level = 100; |
|
1432 |
this(100, 50, 50); |
|
1418 | 1433 |
} |
1419 | 1434 |
|
1435 |
/** |
|
1436 |
* Constructs a new BatteryIcon with default width and height, and with the specified level. |
|
1437 |
* Default width and height are 50. |
|
1438 |
*/ |
|
1420 | 1439 |
public BatteryIcon(int startLevel){ |
1421 |
width = 50; |
|
1422 |
height = 50; |
|
1423 |
level = startLevel; |
|
1440 |
this(startLevel, 50, 50); |
|
1424 | 1441 |
} |
1425 | 1442 |
|
1443 |
/** |
|
1444 |
* Constructs a new BatteryIcon with the specified level, width, and height. |
|
1445 |
*/ |
|
1426 | 1446 |
public BatteryIcon(int startLevel, int w, int h){ |
1427 | 1447 |
level = startLevel; |
1428 | 1448 |
width = w; |
... | ... | |
1431 | 1451 |
|
1432 | 1452 |
public void paintIcon(Component c, Graphics g, int x, int y) { |
1433 | 1453 |
Graphics2D g2d = (Graphics2D) g.create(); |
1434 |
//background |
|
1454 |
//clear the background
|
|
1435 | 1455 |
g2d.setColor(Color.WHITE); |
1436 |
g2d.fillRect(x +1 ,y + 1,width-2,height-2);
|
|
1456 |
g2d.fillRect(x + 1, y + 1, width - 2, height - 2);
|
|
1437 | 1457 |
//outline |
1438 | 1458 |
g2d.setColor(Color.BLACK); |
1439 |
g2d.drawRect((int)(x + width*.3) ,y + 2,(int)(width*.4),height -4);
|
|
1459 |
g2d.drawRect((int)(x + width*.3), y + 2, (int)(width*.4), height - 4);
|
|
1440 | 1460 |
//battery life rectangle |
1441 | 1461 |
g2d.setColor(Color.GREEN); |
1442 | 1462 |
int greenX = (int)(x + 1 + width*.3); |
... | ... | |
1451 | 1471 |
g2d.dispose(); |
1452 | 1472 |
} |
1453 | 1473 |
|
1474 |
/** |
|
1475 |
* Sets the battery level for this BatteryIcon. The level should be given in raw form, i.e. 0-255 directly |
|
1476 |
* from the robot. The value will be converted to a representative percentage automatically. |
|
1477 |
* |
|
1478 |
* @param newLevel the new battery reading from the robot that this BatteryIcon will display. |
|
1479 |
*/ |
|
1454 | 1480 |
public void setLevel(int newLevel) { |
1455 |
level = newLevel;
|
|
1481 |
level = convert(newLevel);
|
|
1456 | 1482 |
} |
1457 |
|
|
1483 |
|
|
1458 | 1484 |
public int getIconWidth() { |
1459 | 1485 |
return width; |
1460 | 1486 |
} |
... | ... | |
1462 | 1488 |
public int getIconHeight() { |
1463 | 1489 |
return height; |
1464 | 1490 |
} |
1491 |
|
|
1492 |
/** |
|
1493 |
* Converts a robot battery reading into representable form. |
|
1494 |
* Readings from the robot are returned as raw values, 0-255. This method converts the reading into a value |
|
1495 |
* from 0 to 100 so that the practical remaining charge is represented. |
|
1496 |
* |
|
1497 |
* @param level The battery level as returned by the robot. |
|
1498 |
* @returns The representable battery percentage. |
|
1499 |
*/ |
|
1500 |
private int convert (int level) { |
|
1501 |
// TODO: make this a forreals conversion. |
|
1502 |
return (int) (1.0 * level / 255); |
|
1503 |
} |
|
1504 |
|
|
1465 | 1505 |
} |
1466 | 1506 |
|
1467 | 1507 |
|
Also available in: Unified diff