def save_filter(self): """ writes the current filter/query params to the filter dict """ fm = FileManager() filter = fm.get_remembered_filter_parameters() if not filter: # TODO: clean up this dirty hack ;) fm.filter = {} filter = fm.filter #process gametypes value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_all.get_active()) filter[filterkey.GT_ALL] = value value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_bomb.get_active()) filter[filterkey.GT_BOMB] = value value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_survivor.get_active()) filter[filterkey.GT_TS] = value value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_ctf.get_active()) filter[filterkey.GT_CTF] = value value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_tdm.get_active()) filter[filterkey.GT_TDM] = value value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_cah.get_active()) filter[filterkey.GT_CAH] = value value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_ftl.get_active()) filter[filterkey.GT_FTL] = value value = fm.value_from_boolean(self.gametypes.\ checkbox_show_gametype_ffa.get_active()) filter[filterkey.GT_FFA] = value #other filters filter[filterkey.FLT_MIN_PLAYERS] = self.\ minplayerentry.get_value_as_int() filter[filterkey.FLT_MAX_PLAYERS] = self.\ maxplayerentry.get_value_as_int() value = fm.value_from_boolean(self.\ checkbox_hide_non_responsive.get_active()) filter[filterkey.FLT_HIDE_NON_RESP] = value value = fm.value_from_boolean(self.\ checkbox_hide_passworded.get_active()) filter[filterkey.FLT_HIDE_PASSWORDED] = value #query params value = fm.value_from_boolean(self.checkbox_showfull.get_active()) filter[filterkey.QRY_SHOW_FULL] = value value = fm.value_from_boolean(self.checkbox_showempty.get_active()) filter[filterkey.QRY_SHOW_EMPTY] = value #write to file t = Thread(target=fm.save_filter_to_remember) t.setDaemon(True) t.start()
def save_filter(self): """ writes the current filter/query params to the filter dict """ fm = FileManager() filter = fm.get_remembered_filter_parameters() if not filter: # TODO: clean up this dirty hack ;) fm.filter = {} filter = fm.filter #process gametypes value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_all.get_active()) filter[filterkey.GT_ALL] = value value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_bomb.get_active()) filter[filterkey.GT_BOMB] = value value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_survivor.get_active()) filter[filterkey.GT_TS] = value value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_ctf.get_active()) filter[filterkey.GT_CTF] = value value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_tdm.get_active()) filter[filterkey.GT_TDM] = value value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_cah.get_active()) filter[filterkey.GT_CAH] = value value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_ftl.get_active()) filter[filterkey.GT_FTL] = value value = fm.value_from_boolean(self.gametypesfilter.\ checkbox_show_gametype_ffa.get_active()) filter[filterkey.GT_FFA] = value #other filters filter[filterkey.FLT_MIN_PLAYERS] = self.\ minplayerentry.get_value_as_int() filter[filterkey.FLT_MAX_PLAYERS] = self.\ maxplayerentry.get_value_as_int() value = fm.value_from_boolean(self.\ checkbox_hide_non_responsive.get_active()) filter[filterkey.FLT_HIDE_NON_RESP] = value value = fm.value_from_boolean(self.\ checkbox_hide_passworded.get_active()) filter[filterkey.FLT_HIDE_PASSWORDED] = value #mapname and servername filter filter[filterkey.FLT_MAP_NAME] = self.mapnameentry.get_text() filter[filterkey.FLT_SERVER_NAME] = self.servernameentry.get_text() #query params value = fm.value_from_boolean(self.checkbox_showfull.get_active()) filter[filterkey.QRY_SHOW_FULL] = value value = fm.value_from_boolean(self.checkbox_showempty.get_active()) filter[filterkey.QRY_SHOW_EMPTY] = value if self.radio_gear_disable.get_active(): filter[filterkey.FLT_GEAR] = cfgvalues.DISABLED elif self.radio_gear_include.get_active(): filter[filterkey.FLT_GEAR] = cfgvalues.INCLUDE elif self.radio_gear_exclude.get_active(): filter[filterkey.FLT_GEAR] = cfgvalues.EXCLUDE #iterate over gearliststore to create a list of geavalues iter = self.gearliststore.iter_children(None) gearvalues = [] #empty list while iter: value = self.gearliststore.get_value(iter, 0) gearvalues.append(value) iter = self.gearliststore.iter_next(iter) filter[filterkey.FLT_GEAR_LIST] = gearvalues #iterate over varliststore to create the list of filter vars iter = self.cvarliststore.iter_children(None) varlist = [] while iter: varfilter = self.cvarliststore.get_value(iter, 3) varlist.append(varfilter) iter = self.cvarliststore.iter_next(iter) filter[filterkey.FLT_VAR_LIST] = varlist #write to file t = Thread(target=fm.save_filter_to_remember) t.setDaemon(True) t.start()