def setDao(self, dao):
     self.dao = dao
     if dao is None:
         self.dao = CCardType()
         self._anagrafica._newRow((self.dao, '', ''))
         #self._refresh()
     return self.dao
class AnagraficaCCardTypeDetail(AnagraficaDetail):
    """ Dettaglio dell'anagrafica dei tipi di carta di credito """

    def __init__(self, anagrafica):
        AnagraficaDetail.__init__(self,
                              anagrafica,
                              path='_anagrafica_ccardtype_elements.glade')

    def setDao(self, dao):
        self.dao = dao
        if dao is None:
            self.dao = CCardType()
            self._anagrafica._newRow((self.dao, '', ''))
            #self._refresh()
        return self.dao

    def updateDao(self):
        self.dao = CCardType().getRecord(id=self.dao.id)
        self._refresh()

    def _refresh(self):
        sel = self._anagrafica.anagrafica_treeview.get_selection()
        (model, iterator) = sel.get_selected()
        model.set_value(iterator, 0, self.dao)
        model.set_value(iterator, 1, self.dao.denominazione)
        model.set_value(iterator, 2, self.dao.denominazione_breve)

    def saveDao(self, tipo=None):
        sel = self._anagrafica.anagrafica_treeview.get_selection()
        (model, iterator) = sel.get_selected()
        denominazione = model.get_value(iterator, 1) or ''
        denominazioneBreve = model.get_value(iterator, 2) or ''
        if (denominazione == ''):
            obligatoryField(self._anagrafica.getTopLevel(),
                self._anagrafica.anagrafica_treeview, campo="Denominazione")
        if (denominazioneBreve == ''):
            obligatoryField(self._anagrafica.getTopLevel(),
                self._anagrafica.anagrafica_treeview, campo="Denominazione Breve")
        self.dao.denominazione = denominazione
        self.dao.denominazione_breve = denominazioneBreve
        self.dao.persist()

    def deleteDao(self):
        self.dao.delete()
 def updateDao(self):
     self.dao = CCardType().getRecord(id=self.dao.id)
     self._refresh()