def sSaveProfile(self): #gui dialog filename = uiAccesories.getSaveFileName("Save Profile","profiles", "Profile Files (*.json)", "neni treba") if(filename == ""): return permanentdata = dstore.GetAllPermanents() json.dump(permanentdata, codecs.open(filename, 'w', 'utf-8'), ensure_ascii = False, indent = 4) uiAccesories.sGuiSetItem("racesettings-app", ["profile"], utils.toUnicode(filename))
def sLoadProfile(self): #gui dialog filename = uiAccesories.getOpenFileName("Load profile","profiles_directory","Profile Files (*.json)", "profile.json") if(filename == ""): return profile = json.load(codecs.open(filename, 'r', 'utf-8')) #reset some values #profile["timing_settings"]['GET']['value']["logic_mode"] = 1 #profile["timing_settings"]['SET']['value']["logic_mode"] = 1 dstore.Set("com_init", 2) dstore.Update(profile) uiAccesories.sGuiSetItem("racesettings-app", ["profile"], utils.toUnicode(filename))
def save(self, lists, keys = None, encode = 'utf8'): my_string = "" for list in lists: for item in list: my_string += utils.toUnicode(item) + u';' my_string += "\n" if encode != None: my_string = my_string.encode(encode) FILE = open(self.filename, 'w') FILE.write(my_string) FILE.close()
def CreateSlots(self): QtCore.QObject.connect(self.rule, QtCore.SIGNAL("textEdited(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["time", self.nr-1, "rule"], utils.toUnicode(x))) QtCore.QObject.connect(self.minute_timeformat, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("additional_info", ["time", self.nr-1, "minute_timeformat"], state, self.Update)) FilterGroup.CreateSlots(self)
def sTextChanged(self): uiAccesories.sGuiSetItem("racesettings-app", ["profile_desc"], utils.toUnicode( Ui().textProfileDesc.toHtml()), self.Update)
def addSlots(self): print "I: SLOTS: tabRaceSettings" #left group QtCore.QObject.connect(Ui().comboTimingMode, QtCore.SIGNAL("activated(int)"), self.sComboTimingMode) QtCore.QObject.connect(Ui().spinTagtime, QtCore.SIGNAL("valueChanged(int)"), self.sFilterTagtime) QtCore.QObject.connect(Ui().spinMinlaptime, QtCore.SIGNAL("valueChanged(int)"), self.sFilterMinlaptime) QtCore.QObject.connect(Ui().spinMaxlapnumber, QtCore.SIGNAL("valueChanged(int)"), self.sFilterMaxlapnumber) #middle group QtCore.QObject.connect(Ui().pushLoadProfile, QtCore.SIGNAL('clicked()'), self.sLoadProfile) QtCore.QObject.connect(Ui().pushSaveProfile, QtCore.SIGNAL('clicked()'), self.sSaveProfile) QtCore.QObject.connect(Ui().lineRaceName, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: uiAccesories.sGuiSetItem("racesettings-app", ["race_name"], utils.toUnicode(name), self.Update)) QtCore.QObject.connect(Ui().textProfileDesc, QtCore.SIGNAL("textChanged()"), self.sTextChanged) QtCore.QObject.connect(Ui().checkRemoteRace, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["remote"], state, self.Update, True)) QtCore.QObject.connect(Ui().checkRfidRace, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["rfid"], state, self.Update, True)) QtCore.QObject.connect(Ui().checkTagFilter, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app",["tag_filter"], state, self.Update)) QtCore.QObject.connect(Ui().comboStarttimeEvaluation, QtCore.SIGNAL("activated(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["evaluation", "starttime"], state, self.Update)) QtCore.QObject.connect(Ui().spinFinishLaps, QtCore.SIGNAL("valueChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["evaluation", "finishtime", "laps"], state, self.Update)) QtCore.QObject.connect(Ui().lineFinishTime, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: uiAccesories.sGuiSetItem("racesettings-app", ["evaluation", "finishtime", "time"], utils.toUnicode(name), self.Update)) #middle group: auto-numbers QtCore.QObject.connect(Ui().spinAutonumbersNrOfUsers, QtCore.SIGNAL("valueChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["autonumbers", "nr_users"], state, self.Update)) QtCore.QObject.connect(Ui().spinAutonumbersNrOfCells, QtCore.SIGNAL("valueChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["autonumbers", "nr_cells"], state, self.Update)) for i in range(0, len(self.autonumbers_cell)): QtCore.QObject.connect(self.autonumbers_cell[i], QtCore.SIGNAL("valueChanged(int)"), lambda state, index = i: uiAccesories.sGuiSetItem("racesettings-app", ["autonumbers", "cells", index], state, self.Update)) #ADDTITIONAL INFO QtCore.QObject.connect(self.status, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("additional_info", ["status", "checked"], state, self.Update)) for i in range(0, NUMBER_OF.TIMESCOLUMNS): self.timesgroups[i].CreateSlots() self.lapgroups[i].CreateSlots() for i in range(0, NUMBER_OF.THREECOLUMNS): QtCore.QObject.connect(self.un[i], QtCore.SIGNAL("stateChanged(int)"), lambda state, index = i: uiAccesories.sGuiSetItem("additional_info", ["un", index, "checked"], state, self.Update)) self.ordergroups[i].CreateSlots() i=0 QtCore.QObject.connect(self.us[i], QtCore.SIGNAL("stateChanged(int)"), lambda state, index = i: uiAccesories.sGuiSetItem("additional_info", ["us", index, "checked"], state, self.Update)) for i in range(0, NUMBER_OF.POINTSCOLUMNS): self.pointgroups[i].CreateSlots()
def CreateSlots(self): QtCore.QObject.connect(self.checked, QtCore.SIGNAL("stateChanged(int)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["order", self.nr-1, "checked"], x, self.Update)) QtCore.QObject.connect(self.type, QtCore.SIGNAL("activated(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["order", self.nr-1, "type"], utils.toUnicode(x))) QtCore.QObject.connect(self.row, QtCore.SIGNAL("activated(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["order", self.nr-1, "row"], utils.toUnicode(x))) QtCore.QObject.connect(self.column1, QtCore.SIGNAL("activated(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["order", self.nr-1, "column1"], utils.toUnicode(x))) QtCore.QObject.connect(self.order1, QtCore.SIGNAL("activated(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["order", self.nr-1, "order1"], utils.toUnicode(x))) QtCore.QObject.connect(self.column2, QtCore.SIGNAL("activated(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["order", self.nr-1, "column2"], utils.toUnicode(x))) QtCore.QObject.connect(self.order2, QtCore.SIGNAL("activated(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["order", self.nr-1, "order2"], utils.toUnicode(x)))
def CreateSlots(self): QtCore.QObject.connect(self.transpose, QtCore.SIGNAL("stateChanged(int)"), lambda x: dstore.SetItem("export_www", [self.index, "transpose"], x)) QtCore.QObject.connect(self.firsttimes, QtCore.SIGNAL("valueChanged(int)"), lambda state: dstore.SetItem("export_www", [self.index, "firsttimes"], state)) QtCore.QObject.connect(self.lasttimes, QtCore.SIGNAL("valueChanged(int)"), lambda state: dstore.SetItem("export_www", [self.index, "lasttimes"], state)) QtCore.QObject.connect(self.css_load_filename, QtCore.SIGNAL('clicked()'), self.sLoadCssFilename) QtCore.QObject.connect(self.css_filename, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export_www", [self.index, "css_filename"], utils.toUnicode(name))) QtCore.QObject.connect(self.js_load_filename, QtCore.SIGNAL('clicked()'), self.sLoadJsFilename) QtCore.QObject.connect(self.js_filename, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export_www", [self.index, "js_filename"], utils.toUnicode(name)))
def CreateSlots(self): QtCore.QObject.connect(self.onerow, QtCore.SIGNAL("stateChanged(int)"), lambda x: dstore.SetItem("export_filtersort", [self.index, "onerow"], x)) QtCore.QObject.connect(self.type, QtCore.SIGNAL("activated(const QString&)"), lambda x: dstore.SetItem("export_filtersort", [self.index, "type"], utils.toUnicode(x))) QtCore.QObject.connect(self.filter, QtCore.SIGNAL("activated(const QString&)"), lambda x: dstore.SetItem("export_filtersort", [self.index, "filter"], utils.toUnicode(x))) QtCore.QObject.connect(self.sort1, QtCore.SIGNAL("activated(const QString&)"), lambda x: dstore.SetItem("export_filtersort", [self.index, "sort1"], utils.toUnicode(x))) QtCore.QObject.connect(self.sortorder1, QtCore.SIGNAL("activated(const QString&)"), lambda x: dstore.SetItem("export_filtersort", [self.index, "sortorder1"], utils.toUnicode(x))) QtCore.QObject.connect(self.sort2, QtCore.SIGNAL("activated(const QString&)"), lambda x: dstore.SetItem("export_filtersort", [self.index, "sort2"], utils.toUnicode(x))) QtCore.QObject.connect(self.sortorder2, QtCore.SIGNAL("activated(const QString&)"), lambda x: dstore.SetItem("export_filtersort", [self.index, "sortorder2"], utils.toUnicode(x)))
def CreateSlots(self): QtCore.QObject.connect(self.racename, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export_header", [self.index, "racename"], utils.toUnicode(name))) QtCore.QObject.connect(self.headertext, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export_header", [self.index, "headertext"], utils.toUnicode(name))) QtCore.QObject.connect(self.categoryname, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export_header", [self.index, "categoryname"], utils.toUnicode(name))) QtCore.QObject.connect(self.description, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export_header", [self.index, "description"], utils.toUnicode(name)))
def replaceSmsTags(text, row): for c,r in row.iteritems(): text = text.replace("%"+c+"%", utils.toUnicode(row[c])) text = text.replace("DNSs", "DNS") return text
def CreateSlots(self): FilterGroup.CreateSlots(self) QtCore.QObject.connect(self.description, QtCore.SIGNAL("textEdited(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["lap", self.nr-1, "description"], utils.toUnicode(x))) QtCore.QObject.connect(self.fromlaststart, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("additional_info", ["lap", self.nr-1, "fromlaststart"], state, self.Update))
def addSlots(self): print "I: SLOTS: tabColumnsSettings" #ADDTITIONAL INFO QtCore.QObject.connect(self.status, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("additional_info", ["status", "checked"], state, self.Update)) for i in range(0, NUMBER_OF.TIMESCOLUMNS): self.timesgroups[i].CreateSlots() self.lapgroups[i].CreateSlots() for i in range(0, NUMBER_OF.THREECOLUMNS): QtCore.QObject.connect(self.un[i], QtCore.SIGNAL("stateChanged(int)"), lambda state, index = i: uiAccesories.sGuiSetItem("additional_info", ["un", index, "checked"], state, self.Update)) QtCore.QObject.connect(self.un_description[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda x, index = i: uiAccesories.sGuiSetItem("additional_info", ["un", index, "description"], utils.toUnicode(x))) self.ordergroups[i].CreateSlots() i=0 QtCore.QObject.connect(self.us[i], QtCore.SIGNAL("stateChanged(int)"), lambda state, index = i: uiAccesories.sGuiSetItem("additional_info", ["us", index, "checked"], state, self.Update)) QtCore.QObject.connect(self.us_description[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda x, index = i: uiAccesories.sGuiSetItem("additional_info", ["us", index, "description"], utils.toUnicode(x))) for i in range(0, NUMBER_OF.POINTSCOLUMNS): self.pointgroups[i].CreateSlots()
def CreateSlots(self): QtCore.QObject.connect(self.checked, QtCore.SIGNAL("stateChanged(int)"), lambda x: uiAccesories.sGuiSetItem("additional_info", [self.name, self.nr-1, "checked"], x)) QtCore.QObject.connect(self.filter, QtCore.SIGNAL("textEdited(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", [self.name, self.nr-1, "filter"], utils.toUnicode(x)))
def CreateSlots(self): #three columns groups for i in range(0, NUMBER_OF.TIMESCOLUMNS): QtCore.QObject.connect(self.time[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "time"+str(idx+1)], utils.toUnicode(name))) QtCore.QObject.connect(self.lap[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "lap"+str(idx+1)], utils.toUnicode(name))) for i in range(0, NUMBER_OF.THREECOLUMNS): QtCore.QObject.connect(self.order[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "order"+str(idx+1)], utils.toUnicode(name))) QtCore.QObject.connect(self.ordercat[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "ordercat"+str(idx+1)], utils.toUnicode(name))) QtCore.QObject.connect(self.un[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "un"+str(idx+1)], utils.toUnicode(name))) i=0 QtCore.QObject.connect(self.us[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "us"+str(idx+1)], utils.toUnicode(name))) QtCore.QObject.connect(self.nr, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export", ["names", "nr"], utils.toUnicode(name))) QtCore.QObject.connect(self.name, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export", ["names", "name"], utils.toUnicode(name))) QtCore.QObject.connect(self.category, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export", ["names", "category"], utils.toUnicode(name))) QtCore.QObject.connect(self.year, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export", ["names", "year"], utils.toUnicode(name))) QtCore.QObject.connect(self.sex, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export", ["names", "sex"], utils.toUnicode(name))) QtCore.QObject.connect(self.club, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export", ["names", "club"], utils.toUnicode(name))) for i in range(0, NUMBER_OF.OPTIONCOLUMNS): QtCore.QObject.connect(self.option[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "o"+str(idx+1)], utils.toUnicode(name))) QtCore.QObject.connect(self.gap, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: dstore.SetItem("export", [self.index, "gap"], utils.toUnicode(name))) for i in range(0, NUMBER_OF.POINTSCOLUMNS): QtCore.QObject.connect(self.points[i], QtCore.SIGNAL("textEdited(const QString&)"), lambda name, idx = i: dstore.SetItem("export", ["names", "points"+str(idx+1)], utils.toUnicode(name)))
def CreateSlots(self): QtCore.QObject.connect(self.checked, QtCore.SIGNAL("stateChanged(int)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["points", self.nr-1, "checked"], x, self.Update)) QtCore.QObject.connect(self.rule, QtCore.SIGNAL("textEdited(const QString&)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["points", self.nr-1, "rule"], utils.toUnicode(x))) QtCore.QObject.connect(self.minimum, QtCore.SIGNAL("valueChanged(int)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["points", self.nr-1, "minimum"], x, self.Update)) QtCore.QObject.connect(self.maximum, QtCore.SIGNAL("valueChanged(int)"), lambda x: uiAccesories.sGuiSetItem("additional_info", ["points", self.nr-1, "maximum"], x, self.Update))
def addSlots(self): print "I: SLOTS: tabRaceSettings" #left group QtCore.QObject.connect(Ui().comboTimingMode, QtCore.SIGNAL("activated(int)"), self.sComboTimingMode) QtCore.QObject.connect(Ui().comboTimesDownloadMode, QtCore.SIGNAL("activated(int)"), self.sComboTimesDownloadMode) QtCore.QObject.connect(Ui().spinAutoenableCell, QtCore.SIGNAL("valueChanged(int)"), self.sAutoenableCell) QtCore.QObject.connect(Ui().spinAutoenableBB, QtCore.SIGNAL("valueChanged(int)"), self.sAutoenableBB) QtCore.QObject.connect(Ui().spinAutorequestMissingtimes, QtCore.SIGNAL("valueChanged(int)"), self.sAutorequestMissingtimes) #middle group QtCore.QObject.connect(Ui().pushLoadProfile, QtCore.SIGNAL('clicked()'), self.sLoadProfile) QtCore.QObject.connect(Ui().pushSaveProfile, QtCore.SIGNAL('clicked()'), self.sSaveProfile) QtCore.QObject.connect(Ui().lineRaceName, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: uiAccesories.sGuiSetItem("racesettings-app", ["race_name"], utils.toUnicode(name), self.Update)) QtCore.QObject.connect(Ui().textProfileDesc, QtCore.SIGNAL("textChanged()"), self.sTextChanged) QtCore.QObject.connect(Ui().checkRemoteRace, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["remote"], state, self.Update, True)) QtCore.QObject.connect(Ui().checkRfidRace, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["rfid"], state, self.Update, True)) QtCore.QObject.connect(Ui().checkTagFilter, QtCore.SIGNAL("stateChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app",["tag_filter"], state, self.Update)) QtCore.QObject.connect(Ui().comboStarttimeEvaluation, QtCore.SIGNAL("activated(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["evaluation", "starttime"], state, self.Update)) QtCore.QObject.connect(Ui().spinFinishLaps, QtCore.SIGNAL("valueChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["evaluation", "finishtime", "laps"], state, self.Update)) QtCore.QObject.connect(Ui().lineFinishTime, QtCore.SIGNAL("textEdited(const QString&)"), lambda name: uiAccesories.sGuiSetItem("racesettings-app", ["evaluation", "finishtime", "time"], utils.toUnicode(name), self.Update)) #middle group: auto-numbers QtCore.QObject.connect(Ui().spinAutonumbersNrOfUsers, QtCore.SIGNAL("valueChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["autonumbers", "nr_users"], state, self.Update)) QtCore.QObject.connect(Ui().spinAutonumbersNrOfCells, QtCore.SIGNAL("valueChanged(int)"), lambda state: uiAccesories.sGuiSetItem("racesettings-app", ["autonumbers", "nr_cells"], state, self.Update)) for i in range(0, len(self.autonumbers_cell)): QtCore.QObject.connect(self.autonumbers_cell[i], QtCore.SIGNAL("valueChanged(int)"), lambda state, index = i: uiAccesories.sGuiSetItem("racesettings-app", ["autonumbers", "cells", index], state, self.Update))