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)
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])
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
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])
def on_focus(self, *args): publish.publish(args[0], "/iotappdev/weather/day/", self.forecast[self.selected_day], args[1])