def _add_button_fired(self, event): print "add dialog opening" add_dialog = AddEstimateDialog() ok = add_dialog.edit_traits(kind='modal') if ok.result: estimate = add_dialog.create_estimate() self.model.estimates.append(estimate) print "new estimate added!" else: print "no new estimate created!" pass
def _edit_button_fired(self, event): # ensure only one highlighted (or use right-click) # create view and populate with this model # once return if 'OK' replace the original estimate else discard if len(self._selected_indices) == 1: row, _ = self._selected_indices[0] estimate = self.model.estimates[row] print "editing {}".format(estimate.name) kws = {} kws['name'] = estimate.name kws['expressions'] = estimate.expressions[:] kws['variables'] = estimate.variables[:] kws['estimate_notes'] = estimate.notes add_dialog = AddEstimateDialog(**kws) ok = add_dialog.edit_traits(kind='modal') if ok: new_estimate = add_dialog.create_estimate() self.model.estimates[row] = new_estimate else: print "Select only one row to edit" pass