def store_value(self, key, w): if key == "vfolders": # And this one is special too # Generate dict of { folder_id : bool } where bool is True if # folder should be shared with this device folders = {} for b in self["vfolders"].get_children(): folders[b.get_tooltip_text()] = b.get_active() # Go over all Folders/<folder>/Devices/<device> keys in config # and set them as needed nid = self.get_value("deviceID") for r in self.config["folders"]: rid = r["id"] found = False for n in r["devices"]: if n["deviceID"] == nid: if not rid in folders or not folders[rid]: # Remove this /<device> key (unshare folder with device) r["devices"].remove(n) break found = True if (not found) and (rid in folders) and folders[rid]: # Add new /<device> key (share folder with device) r["devices"].append( {"addresses": None, "deviceID": nid, "name": "", "certName": "", "compression": "metadata"} ) else: EditorDialog.store_value(self, key, w)
def store_value(self, key, w): if key == "vfolders": # And this one is special too # Generate dict of { folder_id : bool } where bool is True if # folder should be shared with this device folders = {} for b in self["vfolders"].get_children(): folders[b.get_tooltip_text()] = b.get_active() # Go over all Folders/<folder>/Devices/<device> keys in config # and set them as needed nid = self.get_value("deviceID") for r in self.config["folders"]: rid = r["id"] found = False for n in r["devices"]: if n["deviceID"] == nid: if not rid in folders or not folders[rid]: # Remove this /<device> key (unshare folder with device) r["devices"].remove(n) break found = True if (not found) and (rid in folders) and folders[rid]: # Add new /<device> key (share folder with device) r["devices"].append({ "addresses": None, "deviceID": nid, "name": "", "certName": "", "compression": "metadata" }) else: EditorDialog.store_value(self, key, w)
def store_value(self, key, w): if key == "vdevices": # Still very special case devices = [{ "deviceID": b.get_tooltip_text(), } for b in self["vdevices"].get_children() if b.get_active()] self.set_value("devices", devices) else: EditorDialog.store_value(self, key, w)
def store_value(self, key, w): if key == "vdevices": # Still very special case devices = [ { "deviceID" : b.get_tooltip_text(), } for b in self["vdevices"].get_children() if b.get_active() ] self.set_value("devices", devices) else: EditorDialog.store_value(self, key, w)
def store_value(self, key, w): if key == "vautostart_daemon": if self["rbOnStartWait"].get_active() : self.set_value(key[1:], 0) elif self["rbOnStartRun"].get_active() : self.set_value(key[1:], 1) else: return self.set_value(key[1:], 2) # vOnStartAsk elif key == "vautokill_daemon": if self["rbOnExitTerminate"].get_active() : return self.set_value(key[1:], 1) elif self["rbOnExitLeave"].get_active() : return self.set_value(key[1:], 0) else: return self.set_value(key[1:], 2) # vOnExitAsk elif key == "vst_autoupdate": # Reset updatecheck timer when autoupdate is turned on if self["vst_autoupdate"].get_active(): self.values["last_updatecheck"] = LONG_AGO return EditorDialog.store_value(self, key, w) else: return EditorDialog.store_value(self, key, w)
def store_value(self, key, w): if key == "vautostart_daemon": if self["rbOnStartWait"].get_active(): self.set_value(key[1:], 0) elif self["rbOnStartRun"].get_active(): self.set_value(key[1:], 1) else: return self.set_value(key[1:], 2) # vOnStartAsk elif key == "vautokill_daemon": if self["rbOnExitTerminate"].get_active(): return self.set_value(key[1:], 1) elif self["rbOnExitLeave"].get_active(): return self.set_value(key[1:], 0) else: return self.set_value(key[1:], 2) # vOnExitAsk elif key == "vst_autoupdate": # Reset updatecheck timer when autoupdate is turned on if self["vst_autoupdate"].get_active(): self.values["last_updatecheck"] = LONG_AGO return EditorDialog.store_value(self, key, w) else: return EditorDialog.store_value(self, key, w)
def store_value(self, key, w): if key == "vaddresses": addresses = w.get_text().strip() if addresses == "dynamic": # Special case self.set_value("addresses", "dynamic") else: addresses = [ x.strip() if "://" in x else "tcp://%s" % (x.strip(), ) for x in addresses.split(",") ] self.set_value("addresses", ",".join(addresses)) elif key == "vfolders": # Generate dict of { folder_id : bool } where bool is True if # folder should be shared with this device folders = {} for b in self["vfolders"].get_children(): folders[b.get_tooltip_text()] = b.get_active() # Go over all Folders/<folder>/Devices/<device> keys in config # and set them as needed nid = self.get_value("deviceID") for r in self.config["folders"]: rid = r["id"] found = False for n in r["devices"]: if n["deviceID"] == nid: if not rid in folders or not folders[rid]: # Remove this /<device> key (unshare folder with device) r["devices"].remove(n) break found = True if (not found) and (rid in folders) and folders[rid]: # Add new /<device> key (share folder with device) r["devices"].append({ "addresses": None, "deviceID": nid, "name": "", "certName": "", "compression": "metadata" }) else: EditorDialog.store_value(self, key, w)
def store_value(self, key, w): if key == "vaddresses": addresses = w.get_text().strip() if addresses == "dynamic": # Special case self.set_value("addresses", "dynamic") else: addresses = [ x.strip() if "://" in x else "tcp://%s" % (x.strip(),) for x in addresses.split(",") ] self.set_value("addresses", ",".join(addresses)) elif key == "vfolders": # Generate dict of { folder_id : bool } where bool is True if # folder should be shared with this device folders = {} for b in self["vfolders"].get_children(): folders[b.get_tooltip_text()] = b.get_active() # Go over all Folders/<folder>/Devices/<device> keys in config # and set them as needed nid = self.get_value("deviceID") for r in self.config["folders"]: rid = r["id"] found = False for n in r["devices"]: if n["deviceID"] == nid: if not rid in folders or not folders[rid]: # Remove this /<device> key (unshare folder with device) r["devices"].remove(n) break found = True if (not found) and (rid in folders) and folders[rid]: # Add new /<device> key (share folder with device) r["devices"].append({ "addresses" : None, "deviceID" : nid, "name" : "", "certName" : "", "compression" : "metadata" }) else: EditorDialog.store_value(self, key, w)