mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-05-31 20:38:27 +08:00
A/C selected from map
This commit is contained in:
+1
-1
@@ -269,7 +269,7 @@
|
||||
</message>
|
||||
|
||||
<message name="SELECTED" ID="5">
|
||||
<field name="aicraft_id" type="string"/>
|
||||
<field name="aircraft_id" type="string"/>
|
||||
</message>
|
||||
|
||||
<message name="SELECTED_REQ" ID="6">
|
||||
|
||||
@@ -123,7 +123,7 @@ sub on_foo {
|
||||
sub ivy_on_selected {
|
||||
my ($sender_name, $msg_class, $msg_name, $fields, $self) = @_;
|
||||
print "in ivy_on_selected\n"; # if (COCKPIT_DEBUG);
|
||||
my $ac_id = $fields->{aicraft_id};
|
||||
my $ac_id = $fields->{aircraft_id};
|
||||
if (defined $self->{aircrafts_manager}->get_aircraft_by_id($ac_id)) {
|
||||
$self->select_ac($ac_id);
|
||||
}
|
||||
@@ -135,7 +135,7 @@ sub ivy_on_selected {
|
||||
sub on_aircraft_selection {
|
||||
my ($self, $_sp, $what, $new_selected_ac ) = @_;
|
||||
$self->select_ac($new_selected_ac);
|
||||
Paparazzi::IvyProtocol::send_msg('ground', 'SELECTED', { aicraft_id => $new_selected_ac });
|
||||
Paparazzi::IvyProtocol::send_msg('ground', 'SELECTED', { aircraft_id => $new_selected_ac });
|
||||
}
|
||||
|
||||
sub select_ac {
|
||||
|
||||
@@ -239,6 +239,13 @@ let one_new_ac = fun (geomap:MapCanvas.widget) ac ->
|
||||
ignore (ac_menu_fact#add_item "Resize Track" ~callback:(fun () -> resize_track ac track));
|
||||
let cam = ac_menu_fact#add_check_item "Cam Display" ~active:false in
|
||||
ignore (cam#connect#toggled (fun () -> track#set_cam_state cam#active));
|
||||
let event_ac = fun e ->
|
||||
match e with
|
||||
`BUTTON_PRESS _ | `BUTTON_RELEASE _ ->
|
||||
Ground_Pprz.message_send "ground" "SELECTED" ["aircraft_id", Pprz.String ac];
|
||||
true
|
||||
| _ -> false in
|
||||
ignore (track#aircraft#connect#event event_ac);
|
||||
Hashtbl.add live_aircrafts ac { track = track; color = color; fp_group = None }
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user