def on_add(self, widget, data=None): clipboard = gtk.Clipboard() text = clipboard.wait_for_text() wp = None if text != None: try: coord = Coordinates.parse_string(text) wp = Waypoint(coord.lat, coord.lon, coord.alt) except(ValueError): pass if wp == None: pos = self._session.sleek_position wp = Waypoint() wp.lat=pos.lat wp.lon=pos.lon wp.alt=pos.alt new_row = self._session.wpList.append(self._session.get_manual_list_iter(),(wp,))
while i is not None: ic = m.iter_children(i) while ic is not None: wp = m.get_value(ic,0) dist = coord.distance_to(wp) if dist < smallest_dist: smallest_dist = dist closest_wp = wp ic = m.iter_next(ic) i = m.iter_next(i); if closest_wp != None: self._session.target = closest_wp def create_new_waypoint(self, widget,(x,y)): wp = Waypoint() wp.name = "Unnamed Radarpoint" wp.set_coordinates(self.xy_to_coordinates(x,y)) self._session.wpList.append(self._session.get_manual_list_iter(),(wp,)) def button_release(self, widget, event): #print '(%f,%f)'%(event.x , event.y) #print event menu = gtk.Menu() select_as_target = gtk.MenuItem("Select nearest Waypoint") menu.append(select_as_target) select_as_target.connect("activate", self.select_as_target, (event.x,event.y)) select_as_target.show()