def setDao(self, dao):
     self.dao = dao
     if dao is None:
         # Crea un nuovo Dao vuoto
         self.dao = BancheAzienda()
     self._refresh()
     return self.dao
class AnagraficaBancheAziendaEdit(AnagraficaEdit):
    """ Modifica un record dell'anagrafica delle banche azienda """

    def __init__(self, anagrafica):
        AnagraficaEdit.__init__(
            self,
            anagrafica,
            "Dati banche azienda",
            root="anagrafica_banche_azienda_detail_table",
            path="_anagrafica_banche_azienda_elements.glade",
        )
        self._widgetFirstFocus = self.numero_conto_entry
        fillComboboxBanche(self.id_banca_ccb.combobox, short=20)
        self.id_banca_ccb.connect("clicked", on_id_banca_customcombobox_clicked)

    def draw(self, cplx=False):
        pass

    def setDao(self, dao):
        self.dao = dao
        if dao is None:
            # Crea un nuovo Dao vuoto
            self.dao = BancheAzienda()
        self._refresh()
        return self.dao

    def _refresh(self):
        findComboboxRowFromId(self.id_banca_ccb.combobox, self.dao.id_banca)
        self.numero_conto_entry.set_text(self.dao.numero_conto or "")
        self.data_widget.set_text(dateToString(self.dao.data_riporto) or "")
        self.valore_smentry.set_text(str(self.dao.valore_riporto or Decimal(0)))
        self.codice_sia_entry.set_text(self.dao.codice_sia or "")
        self.banca_pref_check.set_active(self.dao.banca_predefinita or False)

    def saveDao(self, tipo=None):
        id_banca = findIdFromCombobox(self.id_banca_ccb.combobox)
        if id_banca is None:
            obligatoryField(self.dialogTopLevel, self.id_banca_ccb.combobox)
        self.dao.id_banca = id_banca
        self.dao.numero_conto = self.numero_conto_entry.get_text()
        self.dao.data_riporto = stringToDate(self.data_widget.get_text())
        self.dao.valore_riporto = self.valore_smentry.get_text() or Decimal(0)
        self.dao.codice_sia = self.codice_sia_entry.get_text()
        self.dao.banca_predefinita = self.banca_pref_check.get_active()
        self.dao.id_azienda = self._anagrafica._idAzienda
        self.dao.persist()