def delete_record_with_conforming(master, record, callback): if tkMessageBox.askyesno( 'Deleting', 'Are you sure you want to delete record order 「{0}」?'.format( record.times), parent=master): DrawLotsModel.delete_record_from_db(record) callback()
def open_adding_new_record_window(master, events, callback): next_record = RecordOfDrawLots.create_new_record_by_last_one( DrawLotsModel.select_last_record(), _get_current_date_time_str()) popup = AddingRecordWindow( master, next_record, events, lambda added_record: (DrawLotsModel.insert_record_into_db(added_record), callback(added_record))) master.wait_window(popup)
def __init__(self, master, **kwargs): MainFrameWithTable.__init__(self, master, **kwargs) self.set_table_place(34, 29) self.table_model = TableModelAdvance() self.table_model.set_columns(RecordOfDrawLots.TABLE_VIEW_COLUMNS) # 滑鼠中鍵事件註冊,設定為更改角色詳細資訊,並選取該列 self.table_view.bind("<Button-2>", lambda event: self.opening_character_update_window(event)) self.table_view.setModel(self.table_model) self.filter_manager = FilterRuleManager() self.records = DrawLotsModel.select_record_list() self.events = DrawLotsModel.select_event_list() self._init_adding_frame() self._init_filter_frame() self.table.tkraise() # 放上層,避免被其他元件遮到 self.update_table()
def __init__(self, master, **kwargs): MainFrameWithTable.__init__(self, master, **kwargs) self.set_table_place(34, 29) self.table_model = TableModelAdvance() self.table_model.set_columns(RecordOfDrawLots.TABLE_VIEW_COLUMNS) # 滑鼠中鍵事件註冊,設定為更改角色詳細資訊,並選取該列 self.table_view.bind( "<Button-2>", lambda event: self.opening_character_update_window(event)) self.table_view.setModel(self.table_model) self.filter_manager = FilterRuleManager() self.records = DrawLotsModel.select_record_list() self.events = DrawLotsModel.select_event_list() self._init_adding_frame() self._init_filter_frame() self.table.tkraise() # 放上層,避免被其他元件遮到 self.update_table()
def open_updating_event_window(master, event, callback): popup = EventWindow(master, event, lambda: ( DrawLotsModel.update_event_into_db(event), callback())) master.wait_window(popup)
def open_adding_event_window(master, callback): event = EventOfDrawLots.create_empty_event() popup = EventWindow(master, event, lambda: ( DrawLotsModel.insert_event_into_db(event), callback(event))) master.wait_window(popup)
def adding_record(self, limitation=True): open_adding_new_record_window( self, DrawLotsModel.get_suitable_events(self.events, limitation), lambda record: (self.records.append(record), self.update_table()))
def open_updating_record_window(master, record, events, callback): popup = UpdatingRecordWindow(master, record, events, lambda: ( DrawLotsModel.update_record_into_db(record), callback())) master.wait_window(popup)
def open_adding_new_record_window(master, events, callback): next_record = RecordOfDrawLots.create_new_record_by_last_one( DrawLotsModel.select_last_record(), _get_current_date_time_str()) popup = AddingRecordWindow(master, next_record, events, lambda added_record: ( DrawLotsModel.insert_record_into_db(added_record), callback(added_record))) master.wait_window(popup)
def open_updating_record_window(master, record, events, callback): popup = UpdatingRecordWindow( master, record, events, lambda: (DrawLotsModel.update_record_into_db(record), callback())) master.wait_window(popup)
def delete_record_with_conforming(master, record, callback): if tkMessageBox.askyesno('Deleting', 'Are you sure you want to delete record order 「{0}」?'.format( record.times), parent=master): DrawLotsModel.delete_record_from_db(record) callback()
def adding_record(self, limitation=True): open_adding_new_record_window(self, DrawLotsModel.get_suitable_events(self.events, limitation), lambda record: ( self.records.append(record), self.update_table()))
def open_updating_event_window(master, event, callback): popup = EventWindow( master, event, lambda: (DrawLotsModel.update_event_into_db(event), callback())) master.wait_window(popup)
def open_adding_event_window(master, callback): event = EventOfDrawLots.create_empty_event() popup = EventWindow( master, event, lambda: (DrawLotsModel.insert_event_into_db(event), callback(event))) master.wait_window(popup)