Supposed nav list buttons working

This commit is contained in:
Chris Pham
2018-03-17 19:44:12 -07:00
parent f024b32acc
commit 790b84b140

View File

@@ -10,6 +10,8 @@ class WaypointsCoordinator(QtCore.QThread):
def __init__(self, shared_objects):
super(WaypointsCoordinator, self).__init__()
self.run_thread_flag = True
self.navigation_table_cur_click = None
self.landmark_table_cur_click = None
self.shared_objects = shared_objects
self.left_screen = self.shared_objects["screens"]["left_screen"]
@@ -26,13 +28,13 @@ class WaypointsCoordinator(QtCore.QThread):
manual_waypoint_decimal_longitude_spin_box)
# Nav Table Buttons
self.nav_set_label = (self.left_screen.
self.nav_set_button_label = (self.left_screen.
navigation_waypoints_set_button)
self.nav_add_manual_label = (self.left_screen.
navigation_waypoints_add_manual_button)
self.nav_add_gps_label = (self.left_screen.
self.nav_add_manual_button_label = (
self.left_screen.navigation_waypoints_add_manual_button)
self.nav_add_gps_button_label = (self.left_screen.
navigation_waypoints_add_gps_button)
self.nav_delete_label = (self.left_screen.
self.nav_delete_button_label = (self.left_screen.
navigation_waypoints_delete_button)
self.settings = QtCore.QSettings()
@@ -47,7 +49,10 @@ class WaypointsCoordinator(QtCore.QThread):
self.new_manual_waypoint_entry.connect(self.update_manual_entry)
# setting up signals to save for Navigation Table
self.nav_add_gps_label.clicked.connect(self._nav_add_gps)
self.nav_add_gps_button_label.clicked.connect(self._nav_add_gps)
self.nav_delete_button_label.clicked.connect(self._nav_del)
self.nav_add_manual_button_label.clicked.connect(self._nav_add_manual)
self.nav_set_button_label.clicked.connect(self._nav_save)
self.navigation_label.cellClicked.connect(self._on_nav_clicked)
self.landmark_label.cellClicked.connect(self._on_land_clicked)
@@ -56,9 +61,14 @@ class WaypointsCoordinator(QtCore.QThread):
count = table.rowCount()
table.insertRow(count)
table.setItem(count, 0, QtWidgets.QTableWidgetItem(name))
table.setItem(count, 1, QtWidgets.QTableWidgetItem(str(lat)))
table.setItem(count, 2, QtWidgets.QTableWidgetItem(str(lng)))
table.setItem(count, 3, QtWidgets.QTableWidgetItem(str(dist)))
table.setItem(count, 1, QtWidgets.QTableWidgetItem(lat))
table.setItem(count, 2, QtWidgets.QTableWidgetItem(lng))
table.setItem(count, 3, QtWidgets.QTableWidgetItem(dist))
def _clear_inputs(self):
self.name_edit_label.clear()
self.latitude_label.clear()
self.longitude_label.clear()
def _nav_add_gps(self):
# request GPS data
@@ -66,7 +76,43 @@ class WaypointsCoordinator(QtCore.QThread):
lat = 44.567200
lng = -123.27860
distance = 200
self._add_to_table(str(name), lat, lng, distance, self.navigation_label)
self._add_to_table(str(name), str(lat),
str(lng), str(distance),
self.navigation_label)
self._clear_inputs()
def _nav_save(self):
lat = self.latitude_label.getText()
lng = self.longitude_label.getText()
self.navigation_label.setItem(self.navigation_table_cur_click,
1,
QtWidgets.QTableWidgetItem(lat))
self.navigation_label.setItem(self.navigation_label,
2,
QtWidgets.QTableWidgetItem(lng))
self._clear_inputs()
def _nav_add_manual(self):
# request GPS data
name = self.navigation_label.rowCount()
lat = self.latitude_label.getText()
lng = self.longitude_label.getText()
distance = 200
self._add_to_table(str(name), lat,
lng, str(distance),
self.navigation_label)
self._clear_inputs
def _nav_del(self):
if self.navigation_table_cur_click is not None:
self.navigation_label.removeRow(self.navigation_table_cur_click)
count = self.navigation_label.rowCount()
for x in range(self.navigation_table_cur_click, count):
self.navigation_label.setItem(x,
0,
QtWidgets.
QTableWidgetItem(str(x)))
self._clear_inputs
def setup_signals(self, start_signal,
signals_and_slots_signal, kill_signal):
@@ -78,13 +124,14 @@ class WaypointsCoordinator(QtCore.QThread):
self.run_thread_flag = False
def update_manual_entry(self, name, lat, lng, table):
print name, lat, lng, table
self.name_edit_label.setEnabled(bool(table))
self.name_edit_label.setText(name)
self.latitude_label.setValue(lat)
self.longitude_label.setValue(lng)
def _on_nav_clicked(self, row, col):
self.navigation_table_cur_click = row
self.landmark_table_cur_click = None
self.new_manual_waypoint_entry.emit(
self.navigation_label.item(row, 0).text(),
float(self.navigation_label.item(row, 1).text()),
@@ -93,6 +140,8 @@ class WaypointsCoordinator(QtCore.QThread):
)
def _on_land_clicked(self, row, col):
self.landmark_table_cur_click = row
self.navigation_table_cur_click = None
self.new_manual_waypoint_entry.emit(
self.landmark_label.item(row, 0).text(),
float(self.landmark_label.item(row, 1).text()),