Index: branches/mavlink/tools/Controller/Mavlink/src/Mavlink_test.cpp
===================================================================
--- branches/mavlink/tools/Controller/Mavlink/src/Mavlink_test.cpp	(revision 46)
+++ branches/mavlink/tools/Controller/Mavlink/src/Mavlink_test.cpp	(revision 47)
@@ -34,4 +34,5 @@
 #include <ComboBox.h>
 #include <GroupBox.h>
+#include <ListWidget.h>
 
 #include "mavlink.h"
@@ -73,13 +74,21 @@
   // Show wpt group
   show_wptGroupBox = new GroupBox(settingsTab->NewRow(), "Show waypoints");
-  label_mission_wpt = new Label(show_wptGroupBox->NewRow(), "Label mission");
-  label_mission_wpt->SetText("Mission wpt");
-  label_entrance_wpt = new Label(show_wptGroupBox->LastRowLastCol(), "Label entrance");
-  label_entrance_wpt->SetText("Entrance wpt");
-  label_exit_wpt = new Label(show_wptGroupBox->LastRowLastCol(), "Label exit");
-  label_exit_wpt->SetText("Exit wpt");
-  label_mission_wpt_list = new Label(show_wptGroupBox->NewRow(), "Label mission list");
-  label_entrance_wpt_list = new Label(show_wptGroupBox->LastRowLastCol(), "Label entrance list");
-  label_exit_wpt_list = new Label(show_wptGroupBox->LastRowLastCol(), "Label exit list");
+  list_mission_wpt = new ListWidget(show_wptGroupBox->NewRow(), "Mission wpt");
+  list_entrance_wpt = new ListWidget(show_wptGroupBox->LastRowLastCol(), "Entrance wpt");
+  list_exit_wpt = new ListWidget(show_wptGroupBox->LastRowLastCol(), "Exit wpt");
+  btn_remove_mission_wpt = new PushButton(show_wptGroupBox->NewRow(), "Remove mission wpt");
+  btn_remove_entrance_wpt = new PushButton(show_wptGroupBox->LastRowLastCol(), "Remove entrance wpt");
+  btn_remove_exit_wpt = new PushButton(show_wptGroupBox->LastRowLastCol(), "Remove exit wpt");
+  
+
+  // label_mission_wpt = new Label(show_wptGroupBox->NewRow(), "Label mission");
+  // label_mission_wpt->SetText("Mission wpt");
+  // label_entrance_wpt = new Label(show_wptGroupBox->LastRowLastCol(), "Label entrance");
+  // label_entrance_wpt->SetText("Entrance wpt");
+  // label_exit_wpt = new Label(show_wptGroupBox->LastRowLastCol(), "Label exit");
+  // label_exit_wpt->SetText("Exit wpt");
+  // label_mission_wpt_list = new Label(show_wptGroupBox->NewRow(), "Label mission list");
+  // label_entrance_wpt_list = new Label(show_wptGroupBox->LastRowLastCol(), "Label entrance list");
+  // label_exit_wpt_list = new Label(show_wptGroupBox->LastRowLastCol(), "Label exit list");
 
   // Action wpt group
@@ -92,12 +101,13 @@
 
   // Put some initial values in the labels
-  label_mission_wpt_list->SetText("3/3\n5/3.5\n");
-  label_entrance_wpt_list->SetText("1.5/2.5\n6/6.5\n");
-  label_exit_wpt_list->SetText("7/7.5\n2/5\n");
-
-  // cmb_box_mission_wpt = new ComboBox(settingsTab->NewRow(), "Mission wpt list");
-  // cmb_box_mission_wpt->AddItem("7 - 7");
-  // cmb_box_mission_wpt->AddItem("2.5 - 3");
-  // cmb_box_mission_wpt->AddItem("3 - 6.5");
+  // label_mission_wpt_list->SetText("3/3\n5/3.5\n");
+  // label_entrance_wpt_list->SetText("1.5/2.5\n6/6.5\n");
+  // label_exit_wpt_list->SetText("7/7.5\n2/5\n");
+
+  list_mission_wpt->AddItem("toto");
+  list_entrance_wpt->AddItem("toto");
+  list_entrance_wpt->AddItem("tata");
+  list_exit_wpt->AddItem("toto");
+
 
   mavlinkSocket = new Socket((Thread *)this, "mavlink socket", "127.0.0.1:5000");
@@ -131,34 +141,47 @@
 	// Check the values of the buttons
 	// First tab
-	if (btn_initialize->Clicked()) {
-		MissionInitialize();
-    }
-	if (btn_start_mission->Clicked()) {
-		MissionStart();
-    }
-	if (btn_stop_mission->Clicked()) {
-		MissionStop();
-    }
-	if (btn_kill->Clicked()) {
-		MissionKill();
-    }
-	// Second tab
-	if (btn_add_mission_wpt->Clicked()) {
-		MissionWptAdd();
-    }
-	if (btn_add_entrance_wpt->Clicked()) {
-		EntranceWptAdd();
-    }
-	if (btn_add_exit_wpt->Clicked()) {
-		ExitWptAdd();
-    }	
+  	if (btn_initialize->Clicked()) {
+  		MissionInitialize();
+    }
+  	if (btn_start_mission->Clicked()) {
+  		MissionStart();
+    }
+  	if (btn_stop_mission->Clicked()) {
+  		MissionStop();
+    }
+  	if (btn_kill->Clicked()) {
+  		MissionKill();
+    }
+  	// Second tab
+  	if (btn_add_mission_wpt->Clicked()) {
+      std::ostringstream stringStream;
+      stringStream.precision(3);
+      stringStream << fixed;
+      stringStream << latField->Value() << " - " << lonField->Value();
+  		list_mission_wpt->AddItem(stringStream.str());
+    }
+  	if (btn_add_entrance_wpt->Clicked()) {
+  		EntranceWptAdd();
+    }
+  	if (btn_add_exit_wpt->Clicked()) {
+  		ExitWptAdd();
+    }
+    if (btn_remove_mission_wpt->Clicked()) {
+      list_mission_wpt->RemoveItem();
+    }
+    if (btn_remove_entrance_wpt->Clicked()) {
+      list_entrance_wpt->RemoveItem();
+    }
+    if (btn_remove_exit_wpt->Clicked()) {
+      list_exit_wpt->RemoveItem();
+    }
     if (btn_send_wpt->Clicked()) {
-		WptSend();
-    }
-	if (btn_clear_wpt->Clicked()) {
-		WptClear();
-    }
-	if (btn_loop->Clicked()) {
-		WptLoopSend();
+  		WptSend();
+    }
+  	if (btn_clear_wpt->Clicked()) {
+  		WptClear();
+    }
+  	if (btn_loop->Clicked()) {
+  		WptLoopSend();
     }
 
