def __init__(self, caminooptimo, valoresq, dimgw, tblgridref=None, parent=None): u""" Constructor de la clase. :param parent: Widget padre. """ super(ShowCODetailsDialog, self).__init__(parent) self.ShowCODetailsD = Ui_CODetailsDialog() self.ShowCODetailsD.setupUi(self) self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowSystemMenuHint | QtCore.Qt.WindowTitleHint) self.camino_optimo = caminooptimo self.valores_q = valoresq self.dim_gw = dimgw self.initialize_dialog()
class ShowCODetailsDialog(QtGui.QDialog): u""" Clase de diálogo 'Opciones' heredada de QDialog. """ def __init__(self, caminooptimo, valoresq, dimgw, tblgridref=None, parent=None): u""" Constructor de la clase. :param parent: Widget padre. """ super(ShowCODetailsDialog, self).__init__(parent) self.ShowCODetailsD = Ui_CODetailsDialog() self.ShowCODetailsD.setupUi(self) self.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.WindowSystemMenuHint | QtCore.Qt.WindowTitleHint) self.camino_optimo = caminooptimo self.valores_q = valoresq self.dim_gw = dimgw self.initialize_dialog() def initialize_dialog(self): u""" Configura y establece el estado de los widgets en el cuadro de diálogo. """ self._set_dialog_signals() # Cachear acceso a métodos y atributos camino_optimo = self.camino_optimo valores_q = self.valores_q tblSecuenciaEstados = self.ShowCODetailsD.tblSecuenciaEstados alto = self.dim_gw[1] item_text_align = QtCore.Qt.AlignHCenter | QtCore.Qt.AlignCenter item_flags = QtCore.Qt.ItemIsEnabled | QtCore.Qt.ItemIsSelectable long_camino_optimo = len(camino_optimo) tblSecuenciaEstados.setRowCount(long_camino_optimo) self.ShowCODetailsD.lblCOCantidadEstados.setText(str(long_camino_optimo)) self.ShowCODetailsD.lblCOSumValQ.setText(_tr("{0:.4f}".format(sum(valores_q)))) for idx, (x, y) in enumerate(camino_optimo): nro_estado = ((x - 1) * alto) + y if idx == 0: item_valor_q = QtGui.QTableWidgetItem(_tr("-")) else: valor_q = valores_q[idx - 1] item_valor_q = QtGui.QTableWidgetItem(_tr("{0:.2f}".format(valor_q))) item_nro_estado = QtGui.QTableWidgetItem(_tr("E{0}".format(nro_estado))) item_coord = QtGui.QTableWidgetItem(_tr("Fila: {0} Columna: {1}".format(x, y))) item_valor_q.setTextAlignment(item_text_align) item_valor_q.setFlags(item_flags) item_coord.setTextAlignment(item_text_align) item_coord.setFlags(item_flags) item_nro_estado.setTextAlignment(item_text_align) item_nro_estado.setFlags(item_flags) tblSecuenciaEstados.setItem(idx, 0, item_nro_estado) tblSecuenciaEstados.setItem(idx, 1, item_coord) tblSecuenciaEstados.setItem(idx, 2, item_valor_q) tblSecuenciaEstados.resizeColumnsToContents() def _set_dialog_signals(self): pass def accept(self): super(ShowCODetailsDialog, self).accept() def reject(self): super(ShowCODetailsDialog, self).reject()