예제 #1
0
def flick(start, finish):
    if not ready:
        return
    global selected_display
    flick_direction = '' + start[0] + finish[0]
    if flick_direction == 'ns':
        displays[selected_display].change_vertical_focus(1, mqtt_client, lock)
    elif flick_direction == 'sn':
        displays[selected_display].change_vertical_focus(-1, mqtt_client, lock)
    elif flick_direction == 'we':
        if not isinstance(displays[selected_display], WelcomeFeed):
            change_display(1)
            publish.publish(
                mqtt_client, "/iotappdev/display/",
                {'display': displays[selected_display].__class__.__name__},
                lock)
            displays[selected_display].on_focus(mqtt_client, lock)
    elif flick_direction == 'ew':
        if not isinstance(displays[selected_display], WelcomeFeed):
            change_display(-1)
            publish.publish(
                mqtt_client, "/iotappdev/display/",
                {'display': displays[selected_display].__class__.__name__},
                lock)
            displays[selected_display].on_focus(mqtt_client, lock)
예제 #2
0
 def change_vertical_focus(self, direction, *args):
     self.forecast_frame.winfo_children()[
         self.selected_day].selected_lbl.configure(image=self.selected_NO)
     self.forecast_frame.winfo_children()[
         self.selected_day].selected_lbl.image = self.selected_NO
     self.selected_day += direction
     if self.selected_day < 0:
         self.selected_day = 5
     elif self.selected_day > 5:
         self.selected_day = 0
     self.forecast_frame.winfo_children()[
         self.selected_day].selected_lbl.configure(image=self.selected_YES)
     self.forecast_frame.winfo_children()[
         self.selected_day].selected_lbl.image = self.selected_YES
     publish.publish(args[0], "/iotappdev/weather/day/",
                     self.forecast[self.selected_day], args[1])
예제 #3
0
	def double_tap(self, *args):
		args[2] = False
		pic_name = str(uuid.uuid4().hex) + ".jpg"
		while self.countdown_timer != 0:
			self.camera_frame.winfo_children()[0].instruction_lbl.config(text=self.countdown_timer)
			self.countdown_timer -= 1
			time.sleep(1)
		self.camera_frame.winfo_children()[0].instruction_lbl.config(text="Cheeeeeeeese!!")
		self.camera.capture('camera_images/%s' % pic_name)
		blob = self.bucket.blob(pic_name)
		with open('camera_images/%s' % pic_name) as my_pic:
			blob.upload_from_file(my_pic)
		publish.publish(args[0], "/iotappdev/android/camera/newpic/", {"pic_name" : pic_name}, args[1])
		os.remove('camera_images/%s' % pic_name)
		self.camera_frame.winfo_children()[0].instruction_lbl.config(text="Double Tap To Take A Snap!!!")
		self.countdown_timer = 3
		args[2] = True
예제 #4
0
displays.append(NotesFeed(gui))
print 'NotesFeed started'
print 'starting NewsFeed'
displays.append(NewsFeed(gui))
print 'NewsFeed started'
print 'starting WeatherFeed'
displays.append(WeatherFeed(gui))
print 'WeatherFeed started'
print 'Starting CameraFeed'
displays.append(CameraFeed(gui))
print 'CameraFeed started'

displays[selected_display].pack(fill=BOTH, expand=YES, padx=40, pady=40)

publish.publish(mqtt_client, "/iotappdev/display/",
                {'display': displays[selected_display].__class__.__name__},
                lock)

ready = True


# function to set gui to fullscreen
def enter_fullscreen(event=None):
    gui.attributes("-fullscreen", True)


# function to remove fullscreen
def close_fullscreen(event=None):
    gui.attributes("-fullscreen", False)

	def on_focus(self, *args):
		link_json = {}
		link_json["link"] = self.current_headlines[self.headline_titles[self.selected_headline]]
		publish.publish(args[0], "/iotappdev/news/article/link/", link_json, args[1])
예제 #6
0
 def on_focus(self, *args):
     publish.publish(args[0], "/iotappdev/weather/day/",
                     self.forecast[self.selected_day], args[1])