def GoToPhoneNotes(self): sm.transition = NoTransition() sm.current = 'phonenotes' sm.transition = SlideTransition()
def transition_changed(self, user_settings): try: self.root.transition = self.transitions.get( user_settings.get('page_transition'))() except BaseException: self.root.transition = SlideTransition()
def changeScreen(self): sm.transition = SlideTransition(direction='right') sm.current = "MNS"
def go_back(self): screen_manager = self.root.ids["screen_manager"] screen_manager.transition = SlideTransition(direction="right") screen_manager.current = "clock_screen"
def connect(self, code): app = App.get_running_app() app.code = code try: # unhashing the invite code hash_fn = basehash.base36() sp = code.split('z') ip = str(hash_fn.unhash(sp[0])) + '.' + str(hash_fn.unhash(sp[1]))+ '.' +\ str(hash_fn.unhash(sp[2])) + '.' + str(hash_fn.unhash(sp[3])) global gid gid = int(hash_fn.unhash(sp[4])) uid = login.uid #add screen incall here (not in main) as it uses gid and uid self.manager.add_widget(incall(name='incall')) #connect to database to check for the inv. code con = cx_Oracle.connect('meetapp/meetapp@localhost') cursor = con.cursor() cursor.execute( "select ID from APP_GROUP where INVITE_CODE=:inv_code", inv_code=code) row = cursor.fetchone() if row != None: # Check if the user in this group cursor.execute( "select USER_ID from APP_GROUP_MEMBERS where GROUP_ID=:groupid and USER_ID=:userid", groupid=gid, userid=uid) row = cursor.fetchone() if row != None: cursor.execute( "select call_state from app_group where id=:groupid", groupid=gid) row = cursor.fetchone() if row != None: port = row[0] # update call state cursor.execute( "update app_group_members set in_call=:incall where group_id=:groupid and user_id=:userid", incall=1, groupid=gid, userid=uid) con.commit() cursor.execute( "select id from APP_GROUP_MEMBERS where group_id=:groupid and user_id=:userid", groupid=gid, userid=uid) print(uid) row = cursor.fetchone() print(row[0]) group_member_id = row[0] global client client = Client.Client(ip, port, group_member_id) self.manager.transition = SlideTransition( direction="right") self.manager.current = 'incall' else: Alert('Error', 'Please try again') self.manager.get_screen('connected').resetForm() # if not group member else: Alert( 'Error', 'You are not in this group.\nAsk the group admin to enter you.' ) self.manager.get_screen('connected').resetForm() #cursor.close() else: Alert('Error', 'No available call for this group') self.manager.get_screen('connected').resetForm() # if code is invalid except: Alert('Error', 'Please enter valid code') self.manager.get_screen('connected').resetForm()
def set_transition(self): self.manager.transition = SlideTransition() self.manager.transition.duration = 0.6 self.manager.transition.direction = "down"
def __init__(self, **kwargs): super().__init__(**kwargs) self.transition = SlideTransition() self.transition.on_complete = self.on_complete
def back(self): self.manager.transition = SlideTransition(direction='left') self.manager.current = 'connected'
def on_timeout(self, dt): self.manager.transition = SlideTransition(direction='right') self.manager.current = Screens.DEFAULT_SCREEN.value
def button_prev(self): self.sm.transition = SlideTransition(direction='right') if self.sm.current == 'Results': self.sm.current = 'Conditions' elif self.sm.current == 'Conditions': self.sm.current = 'Persons'
def build(self): m = Manager(transition=SlideTransition()) return m
def on_enter(self): ScrnMgr = self.parent ScrnMgr.transition = SlideTransition(direction='left', duration=0.4)
def back(self, ScrnMgr): ScrnMgr.transition = SlideTransition(direction='right', duration=0.4) ScrnMgr.current = ScrnMgr.previous()
def build(self): root = FloatLayout() ## Screen Manager self.screen_manager = ScreenManager(transition=SlideTransition(), size_hint=[None, None], pos_hint={'left': 1}) root.bind(size=self.update_size) root.add_widget(self.screen_manager) ## "Navbar" Buttons ## These are meant to work like the Android navbar would, and I have named them as such. # These two functions are used for a indicator for the button being pressed. def rend_circle(btn): with btn.canvas: Color(1, 1, 1, 0.25) size = (btn.size[0], btn.size[1] * 1.5) btn.hl = Ellipse( pos=(btn.pos[0] + ((btn.size[0] / 2) - (size[0] / 2)), btn.pos[1] + ((btn.size[1] / 2) - (size[1] / 2))), size=size) Color(1, 1, 1, 1) # Reset the color, otherwise the background goes dark def derend_circle(btn): btn.canvas.remove(btn.hl) self.win_btn = Button(text='', size_hint=[None, None], size=[192, 192], height=192, pos_hint={ 'right': 1, 'center_y': 0.8 }) self.win_btn.bind(on_press=rend_circle) self.win_btn.bind(on_release=derend_circle) self.win_btn.bind(on_release=self.pressed_win) self.home_btn = Button(text='', size_hint=[None, None], size=[192, 192], pos_hint={ 'right': 1, 'center_y': 0.5 }) self.home_btn.bind(on_press=rend_circle) self.home_btn.bind(on_release=derend_circle) self.home_btn.bind(on_release=self.pressed_home) self.back_btn = Button(text='', size_hint=[None, None], size=[192, 192], pos_hint={ 'right': 1, 'center_y': 0.2 }) self.back_btn.bind(on_press=rend_circle) self.back_btn.bind(on_release=derend_circle) self.back_btn.bind(on_release=self.pressed_back) root.add_widget(self.win_btn) root.add_widget(self.home_btn) root.add_widget(self.back_btn) # Render the background def update_rect(instance, value): instance.bg.pos = instance.pos instance.bg.size = instance.size self.screen_manager.bind(size=update_rect, pos=update_rect) with self.screen_manager.canvas.before: self.screen_manager.bg = Rectangle(source='background.png') Loader.loading_image = 'loading.png' ## FileChooser chooser_screen = Screen(name='chooser') chooser = FileChooserGalleryView(rootpath=PHOTOS_PATH) chooser.file_system = filesystem def select_folder(chooser, photostrip): photostrip.set_path(chooser.current_entry.path) self.goto_screen('photostrip', 'left') chooser.bind( on_select_folder=lambda args: select_folder(chooser, photostrip)) chooser_screen.add_widget(chooser) ## Painter self.paint_screen = PaintScreen(name='painter') self.paint_screen.bind( on_leave=lambda src: self.paint_screen.painter.clear()) ## ImageViewer viewer_screen = ViewerScreen(name='viewer') viewer_screen.bind(on_enter=lambda src: setattr( self.paint_screen.image, 'source', viewer_screen.image.source)) ## Photo strip def foo(a): print type(a), a photostrip_screen = Screen(name='photostrip') photostrip = PhotoStrip() photostrip_screen.add_widget(photostrip) photostrip.bind( on_press=lambda src, fn: viewer_screen.set_image(fn), on_release=lambda src, fn: self.goto_screen('painter', 'left'), ) # Set up the icons and functions for the navbar buttons chooser_screen.btns = [None, 'ic_action_refresh.png', None] chooser_screen.btn_functions = [None, chooser._trigger_update, None] photostrip_screen.btns = [None, None, 'ic_sysbar_back.png'] photostrip_screen.btn_functions = [ None, None, lambda: self.goto_screen('chooser', 'right') ] viewer_screen.btns = ['ic_action_edit.png', None, 'ic_sysbar_back.png'] viewer_screen.btn_functions = [ lambda: self.goto_screen('painter', 'left'), viewer_screen.drawing_toggle, lambda: self.goto_screen('photostrip', 'right') ] self.paint_screen.btns = [ 'ic_action_save.png', None, 'ic_action_discard.png' ] self.paint_screen.btn_functions = [ self.save_painter, None, lambda: self.goto_screen('photostrip', 'right') ] # Finally, add the screens to the manager self.screen_manager.add_widget(chooser_screen) self.screen_manager.add_widget(photostrip_screen) self.screen_manager.add_widget(viewer_screen) self.screen_manager.add_widget(self.paint_screen) # Set the navbar buttons from the variables set above self.screen_manager.transition.bind(on_complete=self.update_buttons) self.update_buttons() return root
def start_rate(self): app.root.ids.manager.transition = SlideTransition(direction="right") app.root.ids.manager.current = 'rate' app.root.ids.manager.get_screen('rate') pass
def back(self): self.reset() self.manager.transition = SlideTransition(direction="right") self.manager.current = 'gallery'
def switch_screen(self, screen): """ This method is fired whenever a new function is selected in the functions dropdown It's job is to set the current screen in the screen manager and set the status of the top action bar """ #When we reset the function bar text as it fires this routine. #catch that here if screen == self.BippyApp.get_string('Action_Title'): return #set the state of the top bar according to the screen that has been requested self.topActionPrevious.with_previous = False if screen == self.BippyApp.get_string( 'Home_Screen') else True #currencies are not important to Mnemonic encryption disable the currency spinner if screen == self.BippyApp.get_string('Mnemonic_Seed_Screen'): self.set_currency(self.BippyApp.get_string('No_Currency_Selected')) self.currencySpinner.disabled = True import encrypt.electrum as electrum print(electrum.buildRandom()) else: self.set_currency(self.ids.currencySpinner.text) self.currencySpinner.disabled = False #the Action spinner always shows the choose action instruction self.actionSpinner.text = self.BippyApp.get_string('Action_Title') #set the transition based on the chosen screen self.BippyApp.mainScreenManager.transition = SlideTransition( direction='left') if screen != self.BippyApp.get_string( 'Home_Screen') else SlideTransition(direction='right') #close the info window if it is open before choosing a new screen if self.BippyApp.show_info is True: self.BippyApp.toggle_info() #set the info to display the info for the chosen screen self.BippyApp.set_info(screen) #set the screen self.BippyApp.mainScreenManager.current = screen #set the title based on the chosen screen self.topActionPrevious.title = self.BippyApp.get_string( 'Main_Title' ) + ' - ' + screen if screen != self.BippyApp.get_string( 'Home_Screen') else self.BippyApp.get_string('Main_Title') #chosing the home screen resets the UI if screen == self.BippyApp.get_string('Home_Screen'): self.BippyApp.reset_ui() #set which widget has focus based on the screen that is chosen if screen == self.BippyApp.get_string('Private_Key_Screen'): if self.BippyApp.privateKeyScreen.newKeyAccordionItem.collapse is True: self.BippyApp.privateKeyScreen.privateKeyInputEK.focus = True else: self.BippyApp.privateKeyScreen.passfieldNK.focus = True if screen == self.BippyApp.get_string('Mnemonic_Seed_Screen'): self.BippyApp.mnemonicSeedScreen.seedfield.focus = True if screen == self.BippyApp.get_string('Public_Key_Screen'): self.BippyApp.publicKeyScreen.keyfield.focus = True return
def display_map(self): self.manager.get_screen("Map").setItems(self.locality, self.pois.values()) self.manager.transition = SlideTransition(direction="left") self.manager.current = "Map"
def backtointerface1(self): self.manager.transition = SlideTransition(direction="right") self.manager.current = 'interface2' self.manager.get_screen('interface2')
def display_list(self): self.manager.get_screen("ListPointOfInterests").setItems( self.locality, self.pois) self.manager.transition = SlideTransition(direction="left") self.manager.current = "ListPointOfInterests"
def go_forward(self): screen_manager = self.root.ids["screen_manager"] screen_manager.transition = SlideTransition(direction="left") screen_manager.current = "stopwatch_screen"
def disconnect(self): Window.size=(600,600) self.manager.transition = SlideTransition(direction="right") self.manager.current = 'connected'
def cancel(self): self.manager.transition = SlideTransition(direction="right") self.manager.current = 'connected' self.manager.get_screen('settings').resetForm()
def login(self): app.root.ids.manager.transition = SlideTransition(direction="left") app.root.ids.manager.current = 'login' pass
def disconnect(self): self.manager.transition = SlideTransition(direction="right") self.manager.current = 'login' self.manager.get_screen('login').resetForm()
def register(self): app.root.ids.manager.transition = SlideTransition(direction="left") app.root.ids.manager.current = 'register' pass
def menu(self): self.manager.transition = SlideTransition(direction="right") self.manager.current = "title"
def disconnect(self): app.root.ids.manager.transition = SlideTransition(direction="right") app.root.ids.manager.current = 'login' app.root.ids.manager.get_screen('login').reset_form() pass
def screenMap(self): sm.transition = SlideTransition(direction='left') sm.current = "MAP"
def GoToDeviceNotes(self): sm.transition = NoTransition() sm.current = 'devicesnotes' sm.transition = SlideTransition()