def ensureOwner(self, ownerDialog): """ Demande un nom de propriétaire si celui-ci n'est pas encore défini pour cette clé USB. Enregistre au passage le nom du propriétaire dans les instances du disque et de sa partiton vfat @param ownerDialog si vrai : fait dialogue interactif @return un nom de propriétaire """ if self.parent and not self.mp: # partiton non montée return ud = self.getFat() assert ud.parent # ud désigne une partition vfat if not db.knowsId(ud.stickid, ud.uuid, ud.tattoo()): text = self.randomOwner(6) if ownerDialog: prompt = QApplication.translate( "Dialog", "La cle {id}<br>n'est pas identifiee, donnez le nom du proprietaire", None ).format(id=ud.stickid) title = QApplication.translate("Dialog", "Entrer un nom", None) text, ok = QInputDialog.getText(None, title, prompt) db.writeStudent(ud.stickid, ud.uuid, ud.tattoo(), text) o = db.readStudent(ud.stickid, ud.uuid, ud.tattoo()) self.owner = o ud.owner = o return o
def ok(self): """ fonction de rappel quand l'utilisateur valide le choix """ newName="%s" %self.ui.lineEditNew.text() newName.encode("utf-8") db.writeStudent(self.stickId, self.uuid, self.tattoo, newName) self.parent().namesDialog.takeItem(newName) self.parent().checkDisks(noLoop=True) self.done(QDialog.Accepted) return
def editRecord(owd, hint=""): """ édition de la base de données @param owd une instance de ownedUsbDisk @param hint chaîne vide par défaut. Peut être le nom de l'ancien propriétaire """ ud = owd.getFat() title = QApplication.translate("Dialog", "Choix du propriétaire", None) prompt = QApplication.translate("Dialog", "Nouveau nom du propriétaire du baladeur", None) newStudent, ok = QInputDialog.getText(None, title, prompt, text=hint) if ok: newStudent = "%s" % newStudent assert ud.parent # ud est une partition de type vfat db.writeStudent(ud.stickid, ud.uuid, ud.tattoo(), newStudent)