3 <!-- interface-requires gtk+ 2.16 -->
4 <!-- interface-naming-policy project-wide -->
5 <widget class="GtkWindow" id="aoview">
6 <property name="width_request">550</property>
7 <property name="height_request">700</property>
8 <property name="visible">True</property>
9 <property name="title" translatable="yes">AltOS View</property>
11 <widget class="GtkVBox" id="vbox1">
12 <property name="visible">True</property>
13 <property name="orientation">vertical</property>
15 <widget class="GtkMenuBar" id="menubar1">
16 <property name="visible">True</property>
18 <widget class="GtkMenuItem" id="menuitem1">
19 <property name="visible">True</property>
20 <property name="label" translatable="yes">_File</property>
21 <property name="use_underline">True</property>
23 <widget class="GtkMenu" id="menu1">
24 <property name="visible">True</property>
26 <widget class="GtkImageMenuItem" id="imagemenuitem1">
27 <property name="label">gtk-new</property>
28 <property name="visible">True</property>
29 <property name="use_underline">True</property>
30 <property name="use_stock">True</property>
34 <widget class="GtkImageMenuItem" id="imagemenuitem2">
35 <property name="label">gtk-open</property>
36 <property name="visible">True</property>
37 <property name="use_underline">True</property>
38 <property name="use_stock">True</property>
42 <widget class="GtkImageMenuItem" id="imagemenuitem3">
43 <property name="label">gtk-save</property>
44 <property name="visible">True</property>
45 <property name="use_underline">True</property>
46 <property name="use_stock">True</property>
50 <widget class="GtkImageMenuItem" id="imagemenuitem4">
51 <property name="label">gtk-save-as</property>
52 <property name="visible">True</property>
53 <property name="use_underline">True</property>
54 <property name="use_stock">True</property>
58 <widget class="GtkSeparatorMenuItem" id="separatormenuitem1">
59 <property name="visible">True</property>
63 <widget class="GtkImageMenuItem" id="imagemenuitem5">
64 <property name="label">gtk-quit</property>
65 <property name="visible">True</property>
66 <property name="use_underline">True</property>
67 <property name="use_stock">True</property>
68 <signal name="activate" handler="gtk_main_quit"/>
76 <widget class="GtkMenuItem" id="menuitem2">
77 <property name="visible">True</property>
78 <property name="label" translatable="yes">_Edit</property>
79 <property name="use_underline">True</property>
81 <widget class="GtkMenu" id="menu2">
82 <property name="visible">True</property>
84 <widget class="GtkImageMenuItem" id="imagemenuitem6">
85 <property name="label">gtk-cut</property>
86 <property name="visible">True</property>
87 <property name="use_underline">True</property>
88 <property name="use_stock">True</property>
92 <widget class="GtkImageMenuItem" id="imagemenuitem7">
93 <property name="label">gtk-copy</property>
94 <property name="visible">True</property>
95 <property name="use_underline">True</property>
96 <property name="use_stock">True</property>
100 <widget class="GtkImageMenuItem" id="imagemenuitem8">
101 <property name="label">gtk-paste</property>
102 <property name="visible">True</property>
103 <property name="use_underline">True</property>
104 <property name="use_stock">True</property>
108 <widget class="GtkImageMenuItem" id="imagemenuitem9">
109 <property name="label">gtk-delete</property>
110 <property name="visible">True</property>
111 <property name="use_underline">True</property>
112 <property name="use_stock">True</property>
120 <widget class="GtkMenuItem" id="menuitem3">
121 <property name="visible">True</property>
122 <property name="label" translatable="yes">_Device</property>
123 <property name="use_underline">True</property>
125 <widget class="GtkMenu" id="menu4">
126 <property name="visible">True</property>
128 <widget class="GtkImageMenuItem" id="ao_connect">
129 <property name="label" translatable="yes">_Connect to device</property>
130 <property name="visible">True</property>
131 <property name="use_underline">True</property>
132 <property name="use_stock">False</property>
133 <signal name="activate_item" handler="gtk_widget_show" object="device_connect_dialog" after="yes"/>
134 <signal name="activate" handler="gtk_widget_show" object="device_connect_dialog" after="yes"/>
135 <child internal-child="image">
136 <widget class="GtkImage" id="image1">
137 <property name="visible">True</property>
138 <property name="stock">gtk-connect</property>
144 <widget class="GtkImageMenuItem" id="ao_disconnect">
145 <property name="label" translatable="yes">_Disconnect</property>
146 <property name="visible">True</property>
147 <property name="use_underline">True</property>
148 <property name="use_stock">False</property>
149 <child internal-child="image">
150 <widget class="GtkImage" id="image2">
151 <property name="visible">True</property>
152 <property name="stock">gtk-disconnect</property>
158 <widget class="GtkSeparatorMenuItem" id="seperator">
159 <property name="visible">True</property>
160 <property name="sensitive">False</property>
164 <widget class="GtkImageMenuItem" id="ao_savelog">
165 <property name="label" translatable="yes">_Save EEPROM data</property>
166 <property name="visible">True</property>
167 <property name="use_underline">True</property>
168 <property name="use_stock">False</property>
169 <signal name="activate_item" handler="gtk_widget_show" object="device_connect_dialog" after="yes"/>
170 <signal name="activate" handler="gtk_widget_show" object="device_connect_dialog"/>
171 <child internal-child="image">
172 <widget class="GtkImage" id="image5">
173 <property name="visible">True</property>
174 <property name="stock">gtk-save</property>
180 <widget class="GtkImageMenuItem" id="ao_replay">
181 <property name="label" translatable="yes">_Replay</property>
182 <property name="visible">True</property>
183 <property name="use_underline">True</property>
184 <property name="use_stock">False</property>
185 <signal name="activate_item" handler="gtk_widget_show" object="ao_replay_dialog" after="yes"/>
186 <signal name="activate" handler="gtk_widget_show" object="ao_replay_dialog"/>
187 <child internal-child="image">
188 <widget class="GtkImage" id="image6">
189 <property name="visible">True</property>
190 <property name="stock">gtk-media-play</property>
200 <widget class="GtkMenuItem" id="menuitem5">
201 <property name="visible">True</property>
202 <property name="label" translatable="yes">_Log</property>
203 <property name="use_underline">True</property>
205 <widget class="GtkMenu" id="menu5">
206 <property name="visible">True</property>
208 <widget class="GtkImageMenuItem" id="log_new">
209 <property name="label" translatable="yes">_New log</property>
210 <property name="visible">True</property>
211 <property name="use_underline">True</property>
212 <property name="use_stock">False</property>
213 <child internal-child="image">
214 <widget class="GtkImage" id="image3">
215 <property name="visible">True</property>
216 <property name="stock">gtk-new</property>
222 <widget class="GtkImageMenuItem" id="file_configure">
223 <property name="label" translatable="yes">_Configure Log</property>
224 <property name="visible">True</property>
225 <property name="use_underline">True</property>
226 <property name="use_stock">False</property>
227 <signal name="activate" handler="gtk_widget_show" object="file_chooser_dialog" after="yes"/>
228 <child internal-child="image">
229 <widget class="GtkImage" id="image4">
230 <property name="visible">True</property>
231 <property name="stock">gtk-preferences</property>
241 <widget class="GtkMenuItem" id="menuitem6">
242 <property name="visible">True</property>
243 <property name="label" translatable="yes">_Voice</property>
244 <property name="use_underline">True</property>
246 <widget class="GtkMenu" id="menu6">
247 <property name="visible">True</property>
249 <widget class="GtkCheckMenuItem" id="voice_enable">
250 <property name="visible">True</property>
251 <property name="label" translatable="yes">Enable _Voice</property>
252 <property name="use_underline">True</property>
253 <property name="active">True</property>
261 <widget class="GtkMenuItem" id="menuitem4">
262 <property name="visible">True</property>
263 <property name="label" translatable="yes">_Help</property>
264 <property name="use_underline">True</property>
266 <widget class="GtkMenu" id="menu3">
267 <property name="visible">True</property>
269 <widget class="GtkImageMenuItem" id="imagemenuitem10">
270 <property name="label">gtk-about</property>
271 <property name="visible">True</property>
272 <property name="use_underline">True</property>
273 <property name="use_stock">True</property>
274 <signal name="activate" handler="gtk_widget_show" object="about_dialog" after="yes"/>
283 <property name="expand">False</property>
284 <property name="position">0</property>
288 <widget class="GtkTable" id="table1">
289 <property name="visible">True</property>
290 <property name="n_rows">2</property>
291 <property name="n_columns">4</property>
292 <property name="row_spacing">3</property>
293 <property name="homogeneous">True</property>
295 <widget class="GtkLabel" id="height_label">
296 <property name="visible">True</property>
297 <property name="label" translatable="yes">Height (m)</property>
298 <property name="justify">center</property>
302 <widget class="GtkLabel" id="state_label">
303 <property name="visible">True</property>
304 <property name="label" translatable="yes">State</property>
307 <property name="left_attach">1</property>
308 <property name="right_attach">2</property>
312 <widget class="GtkLabel" id="rssi_label">
313 <property name="visible">True</property>
314 <property name="label" translatable="yes">RSSI (dBm)</property>
317 <property name="left_attach">2</property>
318 <property name="right_attach">3</property>
322 <widget class="GtkLabel" id="height_value">
323 <property name="visible">True</property>
324 <property name="ypad">2</property>
325 <property name="label" translatable="yes">0</property>
326 <property name="selectable">True</property>
329 <property name="top_attach">1</property>
330 <property name="bottom_attach">2</property>
334 <widget class="GtkLabel" id="state_value">
335 <property name="visible">True</property>
336 <property name="ypad">2</property>
337 <property name="label" translatable="yes">pad</property>
338 <property name="selectable">True</property>
341 <property name="left_attach">1</property>
342 <property name="right_attach">2</property>
343 <property name="top_attach">1</property>
344 <property name="bottom_attach">2</property>
348 <widget class="GtkLabel" id="rssi_value">
349 <property name="visible">True</property>
350 <property name="ypad">2</property>
351 <property name="label" translatable="yes">-50</property>
352 <property name="selectable">True</property>
355 <property name="left_attach">2</property>
356 <property name="right_attach">3</property>
357 <property name="top_attach">1</property>
358 <property name="bottom_attach">2</property>
362 <widget class="GtkLabel" id="speed_label">
363 <property name="visible">True</property>
364 <property name="label" translatable="yes">Speed (m/s)</property>
367 <property name="left_attach">3</property>
368 <property name="right_attach">4</property>
372 <widget class="GtkLabel" id="speed_value">
373 <property name="visible">True</property>
374 <property name="label" translatable="yes">0</property>
375 <property name="selectable">True</property>
378 <property name="left_attach">3</property>
379 <property name="right_attach">4</property>
380 <property name="top_attach">1</property>
381 <property name="bottom_attach">2</property>
386 <property name="expand">False</property>
387 <property name="position">1</property>
391 <widget class="GtkHBox" id="hbox1">
392 <property name="visible">True</property>
394 <widget class="GtkTreeView" id="dataview_0">
395 <property name="visible">True</property>
396 <property name="can_focus">True</property>
397 <property name="show_expanders">False</property>
398 <property name="enable_grid_lines">both</property>
401 <property name="position">0</property>
405 <widget class="GtkTreeView" id="dataview_1">
406 <property name="visible">True</property>
407 <property name="can_focus">True</property>
408 <property name="show_expanders">False</property>
409 <property name="enable_grid_lines">both</property>
412 <property name="position">1</property>
417 <property name="position">2</property>
423 <widget class="GtkDialog" id="device_connect_dialog">
424 <property name="border_width">5</property>
425 <property name="type_hint">normal</property>
426 <property name="has_separator">False</property>
427 <child internal-child="vbox">
428 <widget class="GtkVBox" id="dialog-vbox1">
429 <property name="visible">True</property>
430 <property name="orientation">vertical</property>
431 <property name="spacing">2</property>
433 <widget class="GtkTreeView" id="dev_list">
434 <property name="width_request">300</property>
435 <property name="height_request">100</property>
436 <property name="visible">True</property>
437 <property name="can_focus">True</property>
438 <property name="headers_clickable">False</property>
439 <property name="rules_hint">True</property>
440 <property name="search_column">0</property>
441 <property name="show_expanders">False</property>
442 <property name="level_indentation">1</property>
443 <property name="enable_grid_lines">both</property>
444 <property name="enable_tree_lines">True</property>
447 <property name="position">1</property>
450 <child internal-child="action_area">
451 <widget class="GtkHButtonBox" id="dialog-action_area1">
452 <property name="visible">True</property>
453 <property name="layout_style">end</property>
455 <widget class="GtkButton" id="cancel_button">
456 <property name="label" translatable="yes">gtk-cancel</property>
457 <property name="response_id">1</property>
458 <property name="visible">True</property>
459 <property name="can_focus">True</property>
460 <property name="receives_default">True</property>
461 <property name="use_underline">True</property>
462 <property name="use_stock">True</property>
463 <signal name="clicked" handler="gtk_widget_hide" object="device_connect_dialog" after="yes"/>
466 <property name="expand">False</property>
467 <property name="fill">False</property>
468 <property name="position">0</property>
472 <widget class="GtkButton" id="connect_button">
473 <property name="label" translatable="yes">gtk-connect</property>
474 <property name="visible">True</property>
475 <property name="can_focus">True</property>
476 <property name="can_default">True</property>
477 <property name="has_default">True</property>
478 <property name="receives_default">True</property>
479 <property name="use_stock">True</property>
482 <property name="expand">False</property>
483 <property name="fill">False</property>
484 <property name="position">1</property>
489 <property name="expand">False</property>
490 <property name="pack_type">end</property>
491 <property name="position">0</property>
497 <widget class="GtkFileChooserDialog" id="file_chooser_dialog">
498 <property name="border_width">5</property>
499 <property name="title" translatable="yes">Configure Log Directory</property>
500 <property name="type_hint">dialog</property>
501 <property name="has_separator">False</property>
502 <property name="action">select-folder</property>
503 <child internal-child="vbox">
504 <widget class="GtkVBox" id="dialog-vbox2">
505 <property name="visible">True</property>
506 <property name="orientation">vertical</property>
507 <property name="spacing">2</property>
508 <child internal-child="action_area">
509 <widget class="GtkHButtonBox" id="dialog-action_area2">
510 <property name="visible">True</property>
511 <property name="layout_style">end</property>
513 <widget class="GtkButton" id="file_configure_cancel">
514 <property name="label" translatable="yes">gtk-cancel</property>
515 <property name="visible">True</property>
516 <property name="can_focus">True</property>
517 <property name="receives_default">True</property>
518 <property name="use_stock">True</property>
519 <signal name="clicked" handler="gtk_widget_hide" object="file_chooser_dialog"/>
522 <property name="expand">False</property>
523 <property name="fill">False</property>
524 <property name="position">0</property>
528 <widget class="GtkButton" id="file_configure_ok">
529 <property name="label" translatable="yes">gtk-ok</property>
530 <property name="visible">True</property>
531 <property name="can_focus">True</property>
532 <property name="can_default">True</property>
533 <property name="has_default">True</property>
534 <property name="receives_default">True</property>
535 <property name="use_stock">True</property>
538 <property name="expand">False</property>
539 <property name="fill">False</property>
540 <property name="position">1</property>
545 <property name="expand">False</property>
546 <property name="pack_type">end</property>
547 <property name="position">0</property>
553 <widget class="GtkMessageDialog" id="file_fail_dialog">
554 <property name="border_width">5</property>
555 <property name="title" translatable="yes">Failed to create log</property>
556 <property name="type_hint">normal</property>
557 <property name="skip_taskbar_hint">True</property>
558 <property name="transient_for">aoview</property>
559 <property name="message_type">error</property>
560 <property name="buttons">close</property>
561 <property name="text">Cannot create log file</property>
562 <child internal-child="vbox">
563 <widget class="GtkVBox" id="dialog-vbox4">
564 <property name="visible">True</property>
565 <property name="orientation">vertical</property>
566 <property name="spacing">2</property>
567 <child internal-child="action_area">
568 <widget class="GtkHButtonBox" id="dialog-action_area4">
569 <property name="visible">True</property>
570 <property name="layout_style">end</property>
573 <property name="expand">False</property>
574 <property name="pack_type">end</property>
575 <property name="position">0</property>
581 <widget class="GtkMessageDialog" id="dev_open_fail_dialog">
582 <property name="border_width">5</property>
583 <property name="title" translatable="yes">Failed to open device</property>
584 <property name="type_hint">normal</property>
585 <property name="skip_taskbar_hint">True</property>
586 <property name="transient_for">aoview</property>
587 <property name="message_type">error</property>
588 <property name="buttons">close</property>
589 <property name="text">Cannot open device</property>
590 <child internal-child="vbox">
591 <widget class="GtkVBox" id="dialog-vbox6">
592 <property name="visible">True</property>
593 <property name="orientation">vertical</property>
594 <property name="spacing">2</property>
595 <child internal-child="action_area">
596 <widget class="GtkHButtonBox" id="dialog-action_area6">
597 <property name="visible">True</property>
598 <property name="layout_style">end</property>
601 <property name="expand">False</property>
602 <property name="pack_type">end</property>
603 <property name="position">0</property>
609 <widget class="GtkAboutDialog" id="about_dialog">
610 <property name="border_width">5</property>
611 <property name="title" translatable="yes">About AoView</property>
612 <property name="resizable">False</property>
613 <property name="type_hint">normal</property>
614 <property name="transient_for">aoview</property>
615 <property name="has_separator">False</property>
616 <property name="program_name">AoView</property>
617 <property name="copyright" translatable="yes">Copyright © 2009 Keith Packard</property>
618 <property name="comments" translatable="yes">AltOS data capture and display.</property>
619 <property name="website">http://altusmetrum.org</property>
620 <property name="license" translatable="yes">AoView is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.
622 AoView is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
624 You should have received a copy of the GNU General Public License along with AoView; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</property>
625 <property name="authors">Keith Packard <keithp@keithp.com></property>
626 <property name="wrap_license">True</property>
627 <signal name="close" handler="gtk_widget_hide" object="about_dialog" after="yes"/>
628 <signal name="response" handler="gtk_widget_hide" object="about_dialog" after="yes"/>
629 <child internal-child="vbox">
630 <widget class="GtkVBox" id="dialog-vbox7">
631 <property name="visible">True</property>
632 <property name="orientation">vertical</property>
633 <property name="spacing">2</property>
634 <child internal-child="action_area">
635 <widget class="GtkHButtonBox" id="dialog-action_area7">
636 <property name="visible">True</property>
637 <property name="layout_style">end</property>
640 <property name="expand">False</property>
641 <property name="pack_type">end</property>
642 <property name="position">0</property>
648 <widget class="GtkMessageDialog" id="ao_save_done">
649 <property name="border_width">5</property>
650 <property name="title" translatable="yes">EEPROM save complete</property>
651 <property name="type_hint">normal</property>
652 <property name="skip_taskbar_hint">True</property>
653 <property name="transient_for">aoview</property>
654 <property name="buttons">close</property>
655 <property name="text">Saving EEPROM data as</property>
656 <property name="secondary_text"><filename></property>
657 <signal name="close" handler="gtk_widget_hide" object="ao_save_done"/>
658 <signal name="response" handler="gtk_widget_hide" object="ao_save_done"/>
659 <child internal-child="vbox">
660 <widget class="GtkVBox" id="dialog-vbox11">
661 <property name="visible">True</property>
662 <property name="orientation">vertical</property>
663 <property name="spacing">2</property>
664 <child internal-child="action_area">
665 <widget class="GtkHButtonBox" id="dialog-action_area11">
666 <property name="visible">True</property>
667 <property name="layout_style">end</property>
670 <property name="expand">False</property>
671 <property name="pack_type">end</property>
672 <property name="position">0</property>
678 <widget class="GtkFileChooserDialog" id="ao_replay_dialog">
679 <property name="border_width">5</property>
680 <property name="destroy_with_parent">True</property>
681 <property name="type_hint">dialog</property>
682 <property name="skip_taskbar_hint">True</property>
683 <property name="transient_for">aoview</property>
684 <property name="has_separator">False</property>
685 <child internal-child="vbox">
686 <widget class="GtkVBox" id="dialog-vbox10">
687 <property name="visible">True</property>
688 <property name="orientation">vertical</property>
689 <property name="spacing">2</property>
690 <child internal-child="action_area">
691 <widget class="GtkHButtonBox" id="dialog-action_area10">
692 <property name="visible">True</property>
693 <property name="layout_style">end</property>
695 <widget class="GtkButton" id="ao_replay_cancel">
696 <property name="label" translatable="yes">gtk-cancel</property>
697 <property name="visible">True</property>
698 <property name="can_focus">True</property>
699 <property name="receives_default">True</property>
700 <property name="use_stock">True</property>
701 <signal name="clicked" handler="gtk_widget_hide" object="ao_replay_dialog"/>
704 <property name="expand">False</property>
705 <property name="fill">False</property>
706 <property name="position">0</property>
710 <widget class="GtkButton" id="ao_replay_ok">
711 <property name="label" translatable="yes">gtk-ok</property>
712 <property name="visible">True</property>
713 <property name="can_focus">True</property>
714 <property name="receives_default">True</property>
715 <property name="use_stock">True</property>
718 <property name="expand">False</property>
719 <property name="fill">False</property>
720 <property name="position">1</property>
725 <property name="expand">False</property>
726 <property name="pack_type">end</property>
727 <property name="position">0</property>