def OnChangeDb(self,event): try: interop.disable_messaging() if self.ignore_change_db: return self.ignore_change_db=True sel=self.dbs.GetSelection() (config.xml/'dbview')['selected_db']=sel if sel==0: self.selected_db=None if sel==1 or sel==2: dlg=wx.TextEntryDialog(desktop.main_window,u"Zadej jméno nové databáze",u"Zpěvníkátor") if dlg.ShowModal()==wx.ID_OK: if sel==2: servers=serverconfig.ask_servers() else: servers=[] if servers or sel==1: db=database.dbmanager.create_database(dlg.GetValue(),servers) self.selected_db=db self.filldbs() self.set_data(db) #wx.MessageDialog(self,u"Nová databáze %s" % dlg.GetValue(),u"Zpěvníkátor").ShowModal() #desktop.recreate_menu() if sel>=len(self.predefined_db_list): db=database.dbmanager[sel-len(self.predefined_db_list)] if db!=self.selected_db: self.selected_db=db self.set_data(db) #desktop.recreate_menu() self.showifneeded() desktop.recreate_menu() finally: interop.enable_messaging() self.ignore_change_db=False
def OnNotebookChanged(self,ev): ev.Skip() if hasattr(self,'tmp_cursong'): sl=self.cursonglist(ev.GetSelection()) if sl: sl.set_cur_song(self.tmp_cursong) del self.tmp_cursong desktop.recreate_menu()
def _reload_cfg(event): reload(keyboard) desktop.recreate_menu()