Example #1
0
import drone
import sys

if __name__ == "__main__":
    if len(sys.argv) == 2:
        if sys.argv[1] == "add":
            drone.italics = "add"
        elif sys.argv[1] == "remove":
            drone.italics = "remove"
        else:
            exit("The only valid commands are 'add' or 'remove'")
    else:
        drone.italics = "add"

    drone.main()
    def __init__(self, drone=None):
        """
        Calls the Window super constructor, inits all the GTK gui elements and 
        hooks up all the signal callbacks"""

       
        if drone is not None:
            self.drone = drone
        else:
            import drone
            self.drone = drone.main()
            self.drone.gui = self

        self.video_sensor = self.drone.get_video_sensor()
        self.task_manager = self.drone.get_task_manager()
       

        gtk.Window.__init__(self)
        self.set_title("Video Source")
        self.set_position(gtk.WIN_POS_CENTER)
#        self.set_size_request(360, 500)
       
        master_vbox = gtk.VBox(False, 5)
        master_vbox.set_border_width( 5 )
        self.add( master_vbox )
        
        self.video_image = gtk.Image()
        self.video_image.set_size_request(320, 240)
        self.video_image.set_alignment(1,0)
        self.video_eventbox = gtk.EventBox()
        self.video_eventbox.set_size_request(320, 240)
        self.video_eventbox.connect("motion_notify_event", self.motion_notify_event)
        self.video_eventbox.connect("button_press_event", self.button_press_event)
        self.video_eventbox.add(self.video_image)

        self.video_play_button = gtk.ToggleButton("Start/Stop Video")
        self.video_play_button.connect("clicked", self.toggle_video_play)
        self.video_play_button.set_active(True)

        self.photo_button = gtk.Button("Save picture")
        self.photo_button.connect("clicked", self.save_picture)

        self.crosshairs_button = gtk.ToggleButton("Toggle Crosshairs")
        self.crosshairs_button.connect("clicked", self.toggle_crosshairs)
        
        self.grayscale_button = gtk.ToggleButton("Toggle Grayscale")
        self.grayscale_button.connect("clicked", self.toggle_grayscale)

        master_vbox.pack_start(self.video_eventbox, False, False)
        master_vbox.pack_start(self.video_play_button, False, False)
        master_vbox.pack_start(self.photo_button, False, False)
        master_vbox.pack_start(self.crosshairs_button, False, False)
        master_vbox.pack_start(self.grayscale_button, False, False)
 
        master_vbox.show_all()

        # run flags for showing crosshairs and extracting new features
        self.show_crosshairs = True
        self.show_targets = False
        self.show_grayscale = False
        self.get_new_features = False
        
        self.connect("destroy", self.stop)#gtk.main_quit)
        self.connect('key_press_event', self.handle_key_pressed) 
Example #3
0
import drone
import sys

if __name__=="__main__":
	if len(sys.argv)==2:
		if sys.argv[1]=="add":
			drone.italics = "add"
		elif sys.argv[1]=="remove":
			drone.italics = "remove"
		else:
			exit("The only valid commands are 'add' or 'remove'")
	else:
		drone.italics = "add"
	
	drone.main()
    def __init__(self, drone=None):
            
        gobject.threads_init()
        if drone is not None:
            self.drone = drone
        else:
            import drone
            self.drone = drone.main()
            self.drone.gui = self

        self.detector = self.drone.get_detector_sensor()
        self.sensors = self.drone.get_sensors()
	self.wifi_sensor = self.drone.get_wifi_sensor()
	self.video_sensor = self.drone.get_video_sensor()
	self.navdata_sensor = self.drone.get_navdata_sensor()
        self.controller_manager = self.drone.get_controller_manager()
        self.task_manager = self.drone.get_task_manager()

	self.show_targets = False
	self.show_significance = False

        # Glade stuff ---------
	# Set the Glade file
        self.gladefile = "demogui.glade"  
        self.wTree = gtk.glade.XML(self.gladefile)
        self.window = self.wTree.get_widget("mainWindow")

        if self.window:
            self.window.connect("destroy", self.stop)#gtk.main_quit)
            self.window.connect('key_press_event', self.handle_key_pressed) 

        self.drawing = self.wTree.get_widget("draw1")
	self.drawing.connect("configure-event", self.configure_event)
	self.drawing.connect("expose-event", self.expose_event)

	self.radiobutton1 = self.wTree.get_widget("radiobutton1")
	self.radiobutton2 = self.wTree.get_widget("radiobutton2")
	self.radiobutton3 = self.wTree.get_widget("radiobutton3")
	self.radiobutton4 = self.wTree.get_widget("radiobutton4")

        self.wifi_buttons = self.wTree.get_widget("hbox2")

	self.button1 = self.wTree.get_widget("button1")
	self.button2 = self.wTree.get_widget("button2")
	self.button3 = self.wTree.get_widget("button3")
        self.button4 = self.wTree.get_widget("button4")

	self.radiobutton1.connect("toggled", self.handle_radiobuttons_pressed)
	self.radiobutton2.connect("toggled", self.handle_radiobuttons_pressed)
	self.radiobutton3.connect("toggled", self.handle_radiobuttons_pressed)
	self.radiobutton4.connect("toggled", self.handle_radiobuttons_pressed)

	# Create our dictionary and connect it
        dic = {"btn2OnClick" : self.toggle_targets,
	       "btn3OnClick" : self.toggle_significance,
	       "btn4OnClick" : self.take_sample,
	       "btn5OnClick" : self.set_target,
	       "btn6OnClick" : self.toggle_capture}

	
        self.wTree.signal_autoconnect(dic)
	gtk.quit_add(0, self.drone.stop, True)