def __init__(self):
        QtGui.QDialog.__init__(self)

        self.resize(777, 467)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.crossTabulation = MolusceTableWidget(self)
        # show empty table
        self.verticalLayout.addWidget(self.crossTabulation)

        self.horizontalLayout = QtGui.QHBoxLayout()
        self.openButton = QtGui.QPushButton("Open CSV", self)
        self.horizontalLayout.addWidget(self.openButton)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem)
        self.saveButton = QtGui.QPushButton("Save", self)
        self.horizontalLayout.addWidget(self.saveButton)
        self.closeButton = QtGui.QPushButton("Close", self)
        self.horizontalLayout.addWidget(self.closeButton)
        self.verticalLayout.addLayout(self.horizontalLayout)

        self.closeButton.clicked.connect(self.close)
        self.openButton.clicked.connect(self.handleOpen)
        self.saveButton.clicked.connect(self.handleSave)
        self.initShortcuts()

        self.setWindowTitle("File Dialog")
        self.show()
    def setupUi(self, Widget):
        Widget.setObjectName(_fromUtf8("Widget"))
        Widget.resize(688, 344)
        Widget.setWindowTitle(_fromUtf8(""))
        self.gridLayout = QtGui.QGridLayout(Widget)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.tblMatrix = MolusceTableWidget(Widget)
        self.tblMatrix.setObjectName(_fromUtf8("tblMatrix"))
        self.tblMatrix.setColumnCount(0)
        self.tblMatrix.setRowCount(0)
        self.gridLayout.addWidget(self.tblMatrix, 1, 0, 1, 2)
        self.tblWeights = MolusceTableWidget(Widget)
        self.tblWeights.setObjectName(_fromUtf8("tblWeights"))
        self.tblWeights.setColumnCount(0)
        self.tblWeights.setRowCount(0)
        self.gridLayout.addWidget(self.tblWeights, 3, 0, 1, 2)
        self.label = QtGui.QLabel(Widget)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 4, 0, 1, 1)
        self.spnInitialClass = QtGui.QSpinBox(Widget)
        self.spnInitialClass.setObjectName(_fromUtf8("spnInitialClass"))
        self.gridLayout.addWidget(self.spnInitialClass, 4, 1, 1, 1)
        self.label_2 = QtGui.QLabel(Widget)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout.addWidget(self.label_2, 5, 0, 1, 1)
        self.spnFinalClass = QtGui.QSpinBox(Widget)
        self.spnFinalClass.setObjectName(_fromUtf8("spnFinalClass"))
        self.gridLayout.addWidget(self.spnFinalClass, 5, 1, 1, 1)
        self.btnTrainModel = QtGui.QPushButton(Widget)
        self.btnTrainModel.setObjectName(_fromUtf8("btnTrainModel"))
        self.gridLayout.addWidget(self.btnTrainModel, 6, 1, 1, 1)
        self.label_3 = QtGui.QLabel(Widget)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1)
        self.label_4 = QtGui.QLabel(Widget)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)

        self.retranslateUi(Widget)
        QtCore.QMetaObject.connectSlotsByName(Widget)
    def setupUi(self, Widget):
        Widget.setObjectName(_fromUtf8("Widget"))
        Widget.resize(684, 368)
        Widget.setWindowTitle(_fromUtf8(""))
        self.gridLayout = QtGui.QGridLayout(Widget)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label = QtGui.QLabel(Widget)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 3, 0, 1, 1)
        self.btnTrainModel = QtGui.QPushButton(Widget)
        self.btnTrainModel.setObjectName(_fromUtf8("btnTrainModel"))
        self.gridLayout.addWidget(self.btnTrainModel, 12, 0, 1, 2)
        self.pteWeightsInform = QtGui.QPlainTextEdit(Widget)
        self.pteWeightsInform.setObjectName(_fromUtf8("pteWeightsInform"))
        self.gridLayout.addWidget(self.pteWeightsInform, 11, 0, 1, 2)
        self.btnResetBins = QtGui.QPushButton(Widget)
        self.btnResetBins.setObjectName(_fromUtf8("btnResetBins"))
        self.gridLayout.addWidget(self.btnResetBins, 5, 0, 1, 1)
        self.label_4 = QtGui.QLabel(Widget)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout.addWidget(self.label_4, 6, 0, 1, 1)
        self.tblReclass = MolusceTableWidget(Widget)
        self.tblReclass.setSelectionMode(QtGui.QAbstractItemView.SingleSelection)
        self.tblReclass.setObjectName(_fromUtf8("tblReclass"))
        self.tblReclass.setColumnCount(5)
        self.tblReclass.setRowCount(0)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(0, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(1, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(2, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(3, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(4, item)
        self.tblReclass.horizontalHeader().setStretchLastSection(True)
        self.gridLayout.addWidget(self.tblReclass, 4, 0, 1, 1)

        self.retranslateUi(Widget)
        QtCore.QMetaObject.connectSlotsByName(Widget)
    def setupUi(self, Dialog):
        Dialog.setObjectName(_fromUtf8("Dialog"))
        Dialog.resize(887, 519)
        self.gridLayout_10 = QtGui.QGridLayout(Dialog)
        self.gridLayout_10.setObjectName(_fromUtf8("gridLayout_10"))
        self.tabWidget = QtGui.QTabWidget(Dialog)
        self.tabWidget.setEnabled(True)
        self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
        self.tabInputs = QtGui.QWidget()
        self.tabInputs.setObjectName(_fromUtf8("tabInputs"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.tabInputs)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.splitter = QtGui.QSplitter(self.tabInputs)
        self.splitter.setOrientation(QtCore.Qt.Horizontal)
        self.splitter.setObjectName(_fromUtf8("splitter"))
        self.lstLayers = QtGui.QListWidget(self.splitter)
        self.lstLayers.setEditTriggers(QtGui.QAbstractItemView.NoEditTriggers)
        self.lstLayers.setAlternatingRowColors(True)
        self.lstLayers.setSelectionMode(QtGui.QAbstractItemView.ExtendedSelection)
        self.lstLayers.setObjectName(_fromUtf8("lstLayers"))
        self.widget = QtGui.QWidget(self.splitter)
        self.widget.setObjectName(_fromUtf8("widget"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.widget)
        self.verticalLayout_3.setMargin(0)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.gridLayout_2 = QtGui.QGridLayout()
        self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
        self.btnSetInitialRaster = QtGui.QPushButton(self.widget)
        self.btnSetInitialRaster.setObjectName(_fromUtf8("btnSetInitialRaster"))
        self.gridLayout_2.addWidget(self.btnSetInitialRaster, 0, 0, 1, 1)
        self.leInitRasterName = QtGui.QLineEdit(self.widget)
        self.leInitRasterName.setObjectName(_fromUtf8("leInitRasterName"))
        self.gridLayout_2.addWidget(self.leInitRasterName, 0, 1, 1, 1)
        self.btnSetFinalRaster = QtGui.QPushButton(self.widget)
        self.btnSetFinalRaster.setObjectName(_fromUtf8("btnSetFinalRaster"))
        self.gridLayout_2.addWidget(self.btnSetFinalRaster, 1, 0, 1, 1)
        self.leInitYear = QtGui.QLineEdit(self.widget)
        self.leInitYear.setObjectName(_fromUtf8("leInitYear"))
        self.gridLayout_2.addWidget(self.leInitYear, 0, 2, 1, 1)
        self.leFinalRasterName = QtGui.QLineEdit(self.widget)
        self.leFinalRasterName.setObjectName(_fromUtf8("leFinalRasterName"))
        self.gridLayout_2.addWidget(self.leFinalRasterName, 1, 1, 1, 1)
        self.leFinalYear = QtGui.QLineEdit(self.widget)
        self.leFinalYear.setObjectName(_fromUtf8("leFinalYear"))
        self.gridLayout_2.addWidget(self.leFinalYear, 1, 2, 1, 1)
        self.lstFactors = QtGui.QListWidget(self.widget)
        self.lstFactors.setEditTriggers(QtGui.QAbstractItemView.NoEditTriggers)
        self.lstFactors.setAlternatingRowColors(True)
        self.lstFactors.setSelectionMode(QtGui.QAbstractItemView.ExtendedSelection)
        self.lstFactors.setObjectName(_fromUtf8("lstFactors"))
        self.gridLayout_2.addWidget(self.lstFactors, 4, 1, 5, 2)
        spacerItem = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.gridLayout_2.addItem(spacerItem, 2, 1, 1, 1)
        self.btnRemoveAllFactors = QtGui.QPushButton(self.widget)
        self.btnRemoveAllFactors.setObjectName(_fromUtf8("btnRemoveAllFactors"))
        self.gridLayout_2.addWidget(self.btnRemoveAllFactors, 8, 0, 1, 1)
        self.btnRemoveFactor = QtGui.QPushButton(self.widget)
        self.btnRemoveFactor.setObjectName(_fromUtf8("btnRemoveFactor"))
        self.gridLayout_2.addWidget(self.btnRemoveFactor, 7, 0, 1, 1)
        self.btnAddFactor = QtGui.QPushButton(self.widget)
        self.btnAddFactor.setObjectName(_fromUtf8("btnAddFactor"))
        self.gridLayout_2.addWidget(self.btnAddFactor, 6, 0, 1, 1)
        self.label = QtGui.QLabel(self.widget)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout_2.addWidget(self.label, 3, 1, 1, 1)
        self.verticalLayout_3.addLayout(self.gridLayout_2)
        self.btnCheckGeometry = QtGui.QPushButton(self.widget)
        self.btnCheckGeometry.setObjectName(_fromUtf8("btnCheckGeometry"))
        self.verticalLayout_3.addWidget(self.btnCheckGeometry)
        self.verticalLayout_2.addWidget(self.splitter)
        self.tabWidget.addTab(self.tabInputs, _fromUtf8(""))
        self.tabCorrelationChecking = QtGui.QWidget()
        self.tabCorrelationChecking.setObjectName(_fromUtf8("tabCorrelationChecking"))
        self.gridLayout_7 = QtGui.QGridLayout(self.tabCorrelationChecking)
        self.gridLayout_7.setObjectName(_fromUtf8("gridLayout_7"))
        self.gridLayout_6 = QtGui.QGridLayout()
        self.gridLayout_6.setMargin(9)
        self.gridLayout_6.setObjectName(_fromUtf8("gridLayout_6"))
        self.label_9 = QtGui.QLabel(self.tabCorrelationChecking)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.gridLayout_6.addWidget(self.label_9, 3, 0, 1, 1)
        self.cmbSecondRaster = QtGui.QComboBox(self.tabCorrelationChecking)
        self.cmbSecondRaster.setObjectName(_fromUtf8("cmbSecondRaster"))
        self.gridLayout_6.addWidget(self.cmbSecondRaster, 1, 1, 1, 1)
        self.cmbCorrCheckMethod = QtGui.QComboBox(self.tabCorrelationChecking)
        self.cmbCorrCheckMethod.setObjectName(_fromUtf8("cmbCorrCheckMethod"))
        self.gridLayout_6.addWidget(self.cmbCorrCheckMethod, 3, 1, 1, 1)
        self.cmbFirstRaster = QtGui.QComboBox(self.tabCorrelationChecking)
        self.cmbFirstRaster.setObjectName(_fromUtf8("cmbFirstRaster"))
        self.gridLayout_6.addWidget(self.cmbFirstRaster, 0, 1, 1, 1)
        self.label_7 = QtGui.QLabel(self.tabCorrelationChecking)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.gridLayout_6.addWidget(self.label_7, 0, 0, 1, 1)
        self.label_8 = QtGui.QLabel(self.tabCorrelationChecking)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.gridLayout_6.addWidget(self.label_8, 1, 0, 1, 1)
        self.label_10 = QtGui.QLabel(self.tabCorrelationChecking)
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.gridLayout_6.addWidget(self.label_10, 4, 0, 1, 1)
        self.tblCorrelation = QtGui.QTableWidget(self.tabCorrelationChecking)
        self.tblCorrelation.setObjectName(_fromUtf8("tblCorrelation"))
        self.tblCorrelation.setColumnCount(0)
        self.tblCorrelation.setRowCount(0)
        self.gridLayout_6.addWidget(self.tblCorrelation, 4, 1, 1, 1)
        self.btnStartCorrChecking = QtGui.QPushButton(self.tabCorrelationChecking)
        self.btnStartCorrChecking.setObjectName(_fromUtf8("btnStartCorrChecking"))
        self.gridLayout_6.addWidget(self.btnStartCorrChecking, 5, 1, 1, 1)
        self.chkAllCorr = QtGui.QCheckBox(self.tabCorrelationChecking)
        self.chkAllCorr.setObjectName(_fromUtf8("chkAllCorr"))
        self.gridLayout_6.addWidget(self.chkAllCorr, 2, 1, 1, 1)
        self.gridLayout_7.addLayout(self.gridLayout_6, 0, 0, 1, 1)
        self.tabWidget.addTab(self.tabCorrelationChecking, _fromUtf8(""))
        self.tabAreaChanges = QtGui.QWidget()
        self.tabAreaChanges.setObjectName(_fromUtf8("tabAreaChanges"))
        self.gridLayout = QtGui.QGridLayout(self.tabAreaChanges)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label_2 = QtGui.QLabel(self.tabAreaChanges)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1)
        self.label_3 = QtGui.QLabel(self.tabAreaChanges)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout.addWidget(self.label_3, 3, 0, 1, 1)
        self.btnUpdateStatistics = QtGui.QPushButton(self.tabAreaChanges)
        self.btnUpdateStatistics.setObjectName(_fromUtf8("btnUpdateStatistics"))
        self.gridLayout.addWidget(self.btnUpdateStatistics, 5, 0, 1, 1)
        self.btnCreateChangeMap = QtGui.QPushButton(self.tabAreaChanges)
        self.btnCreateChangeMap.setObjectName(_fromUtf8("btnCreateChangeMap"))
        self.gridLayout.addWidget(self.btnCreateChangeMap, 5, 1, 1, 1)
        self.tblStatistics = MolusceTableWidget(self.tabAreaChanges)
        self.tblStatistics.setObjectName(_fromUtf8("tblStatistics"))
        self.tblStatistics.setColumnCount(0)
        self.tblStatistics.setRowCount(0)
        self.gridLayout.addWidget(self.tblStatistics, 2, 0, 1, 2)
        self.tblTransMatrix = MolusceTableWidget(self.tabAreaChanges)
        self.tblTransMatrix.setObjectName(_fromUtf8("tblTransMatrix"))
        self.tblTransMatrix.setColumnCount(0)
        self.tblTransMatrix.setRowCount(0)
        self.gridLayout.addWidget(self.tblTransMatrix, 4, 0, 1, 2)
        self.cmbUnits = QtGui.QComboBox(self.tabAreaChanges)
        self.cmbUnits.setObjectName(_fromUtf8("cmbUnits"))
        self.gridLayout.addWidget(self.cmbUnits, 0, 1, 1, 1)
        self.cmbUnitsMatrix = QtGui.QComboBox(self.tabAreaChanges)
        self.cmbUnitsMatrix.setObjectName(_fromUtf8("cmbUnitsMatrix"))
        self.gridLayout.addWidget(self.cmbUnitsMatrix, 3, 1, 1, 1)
        self.tabWidget.addTab(self.tabAreaChanges, _fromUtf8(""))
        self.tabModel = QtGui.QWidget()
        self.tabModel.setObjectName(_fromUtf8("tabModel"))
        self.gridLayout_3 = QtGui.QGridLayout(self.tabModel)
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.label_4 = QtGui.QLabel(self.tabModel)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout_3.addWidget(self.label_4, 2, 0, 1, 1)
        self.grpSampling = QgsCollapsibleGroupBox(self.tabModel)
        self.grpSampling.setCheckable(False)
        self.grpSampling.setChecked(False)
        self.grpSampling.setProperty("collapsed", True)
        self.grpSampling.setProperty("saveCollapsedState", True)
        self.grpSampling.setProperty("saveCheckedState", False)
        self.grpSampling.setObjectName(_fromUtf8("grpSampling"))
        self.horizontalLayout = QtGui.QHBoxLayout(self.grpSampling)
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.label_5 = QtGui.QLabel(self.grpSampling)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.horizontalLayout.addWidget(self.label_5)
        self.cmbSamplingMode = QtGui.QComboBox(self.grpSampling)
        self.cmbSamplingMode.setObjectName(_fromUtf8("cmbSamplingMode"))
        self.horizontalLayout.addWidget(self.cmbSamplingMode)
        self.label_6 = QtGui.QLabel(self.grpSampling)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.horizontalLayout.addWidget(self.label_6)
        self.spnSamplesCount = QtGui.QSpinBox(self.grpSampling)
        self.spnSamplesCount.setMaximum(100000000)
        self.spnSamplesCount.setProperty("value", 1000)
        self.spnSamplesCount.setObjectName(_fromUtf8("spnSamplesCount"))
        self.horizontalLayout.addWidget(self.spnSamplesCount)
        self.btnSelectSamples = QtGui.QPushButton(self.grpSampling)
        self.btnSelectSamples.setObjectName(_fromUtf8("btnSelectSamples"))
        self.horizontalLayout.addWidget(self.btnSelectSamples)
        self.chkLoadSamples = QtGui.QCheckBox(self.grpSampling)
        self.chkLoadSamples.setObjectName(_fromUtf8("chkLoadSamples"))
        self.horizontalLayout.addWidget(self.chkLoadSamples)
        self.gridLayout_3.addWidget(self.grpSampling, 0, 0, 1, 3)
        self.cmbSimulationMethod = QtGui.QComboBox(self.tabModel)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cmbSimulationMethod.sizePolicy().hasHeightForWidth())
        self.cmbSimulationMethod.setSizePolicy(sizePolicy)
        self.cmbSimulationMethod.setObjectName(_fromUtf8("cmbSimulationMethod"))
        self.gridLayout_3.addWidget(self.cmbSimulationMethod, 2, 1, 1, 1)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.gridLayout_3.addItem(spacerItem1, 2, 2, 1, 1)
        self.widgetStackMethods = QtGui.QStackedWidget(self.tabModel)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.widgetStackMethods.sizePolicy().hasHeightForWidth())
        self.widgetStackMethods.setSizePolicy(sizePolicy)
        self.widgetStackMethods.setFrameShape(QtGui.QFrame.NoFrame)
        self.widgetStackMethods.setFrameShadow(QtGui.QFrame.Sunken)
        self.widgetStackMethods.setObjectName(_fromUtf8("widgetStackMethods"))
        self.gridLayout_3.addWidget(self.widgetStackMethods, 3, 0, 1, 3)
        self.tabWidget.addTab(self.tabModel, _fromUtf8(""))
        self.tabSimulation = QtGui.QWidget()
        self.tabSimulation.setObjectName(_fromUtf8("tabSimulation"))
        self.gridLayout_5 = QtGui.QGridLayout(self.tabSimulation)
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.gridLayout_4 = QtGui.QGridLayout()
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.btnSelectRiskFunction = QtGui.QPushButton(self.tabSimulation)
        self.btnSelectRiskFunction.setEnabled(False)
        self.btnSelectRiskFunction.setObjectName(_fromUtf8("btnSelectRiskFunction"))
        self.gridLayout_4.addWidget(self.btnSelectRiskFunction, 1, 2, 1, 1)
        self.chkRiskFunction = QtGui.QCheckBox(self.tabSimulation)
        self.chkRiskFunction.setObjectName(_fromUtf8("chkRiskFunction"))
        self.gridLayout_4.addWidget(self.chkRiskFunction, 1, 0, 1, 1)
        self.leRiskFunctionPath = QtGui.QLineEdit(self.tabSimulation)
        self.leRiskFunctionPath.setEnabled(False)
        self.leRiskFunctionPath.setObjectName(_fromUtf8("leRiskFunctionPath"))
        self.gridLayout_4.addWidget(self.leRiskFunctionPath, 1, 1, 1, 1)
        self.chkMonteCarlo = QtGui.QCheckBox(self.tabSimulation)
        self.chkMonteCarlo.setChecked(False)
        self.chkMonteCarlo.setObjectName(_fromUtf8("chkMonteCarlo"))
        self.gridLayout_4.addWidget(self.chkMonteCarlo, 2, 0, 1, 1)
        self.leMonteCarloPath = QtGui.QLineEdit(self.tabSimulation)
        self.leMonteCarloPath.setEnabled(False)
        self.leMonteCarloPath.setObjectName(_fromUtf8("leMonteCarloPath"))
        self.gridLayout_4.addWidget(self.leMonteCarloPath, 2, 1, 1, 1)
        self.btnSelectMonteCarlo = QtGui.QPushButton(self.tabSimulation)
        self.btnSelectMonteCarlo.setEnabled(False)
        self.btnSelectMonteCarlo.setObjectName(_fromUtf8("btnSelectMonteCarlo"))
        self.gridLayout_4.addWidget(self.btnSelectMonteCarlo, 2, 2, 1, 1)
        self.lblIterations = QtGui.QLabel(self.tabSimulation)
        self.lblIterations.setEnabled(False)
        self.lblIterations.setObjectName(_fromUtf8("lblIterations"))
        self.gridLayout_4.addWidget(self.lblIterations, 3, 1, 1, 1)
        self.spnIterations = QtGui.QSpinBox(self.tabSimulation)
        self.spnIterations.setEnabled(False)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.spnIterations.sizePolicy().hasHeightForWidth())
        self.spnIterations.setSizePolicy(sizePolicy)
        self.spnIterations.setMinimum(1)
        self.spnIterations.setMaximum(100)
        self.spnIterations.setProperty("value", 1)
        self.spnIterations.setObjectName(_fromUtf8("spnIterations"))
        self.gridLayout_4.addWidget(self.spnIterations, 3, 2, 1, 1)
        self.chkTransitionPotentials = QtGui.QCheckBox(self.tabSimulation)
        self.chkTransitionPotentials.setChecked(False)
        self.chkTransitionPotentials.setObjectName(_fromUtf8("chkTransitionPotentials"))
        self.gridLayout_4.addWidget(self.chkTransitionPotentials, 0, 0, 1, 1)
        self.leTransitionPotentialPrefix = QtGui.QLineEdit(self.tabSimulation)
        self.leTransitionPotentialPrefix.setEnabled(False)
        self.leTransitionPotentialPrefix.setObjectName(_fromUtf8("leTransitionPotentialPrefix"))
        self.gridLayout_4.addWidget(self.leTransitionPotentialPrefix, 0, 1, 1, 1)
        self.btnSelectTransitionPrefix = QtGui.QPushButton(self.tabSimulation)
        self.btnSelectTransitionPrefix.setEnabled(False)
        self.btnSelectTransitionPrefix.setObjectName(_fromUtf8("btnSelectTransitionPrefix"))
        self.gridLayout_4.addWidget(self.btnSelectTransitionPrefix, 0, 2, 1, 1)
        self.gridLayout_5.addLayout(self.gridLayout_4, 0, 0, 1, 3)
        spacerItem2 = QtGui.QSpacerItem(20, 94, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.gridLayout_5.addItem(spacerItem2, 1, 0, 1, 1)
        self.btnStartSimulation = QtGui.QPushButton(self.tabSimulation)
        self.btnStartSimulation.setObjectName(_fromUtf8("btnStartSimulation"))
        self.gridLayout_5.addWidget(self.btnStartSimulation, 2, 1, 1, 1)
        self.tabWidget.addTab(self.tabSimulation, _fromUtf8(""))
        self.tabValidation = QtGui.QWidget()
        self.tabValidation.setObjectName(_fromUtf8("tabValidation"))
        self.gridLayout_11 = QtGui.QGridLayout(self.tabValidation)
        self.gridLayout_11.setObjectName(_fromUtf8("gridLayout_11"))
        self.layoutValPlot = QtGui.QVBoxLayout()
        self.layoutValPlot.setObjectName(_fromUtf8("layoutValPlot"))
        self.gridLayout_11.addLayout(self.layoutValPlot, 1, 0, 1, 2)
        self.gridLayout_9 = QtGui.QGridLayout()
        self.gridLayout_9.setObjectName(_fromUtf8("gridLayout_9"))
        spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.gridLayout_9.addItem(spacerItem3, 1, 3, 1, 1)
        self.leKappaOveral = QtGui.QLineEdit(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.leKappaOveral.sizePolicy().hasHeightForWidth())
        self.leKappaOveral.setSizePolicy(sizePolicy)
        self.leKappaOveral.setReadOnly(True)
        self.leKappaOveral.setObjectName(_fromUtf8("leKappaOveral"))
        self.gridLayout_9.addWidget(self.leKappaOveral, 2, 5, 1, 1)
        self.btnSelectRiskValidation = QtGui.QPushButton(self.tabValidation)
        self.btnSelectRiskValidation.setEnabled(False)
        self.btnSelectRiskValidation.setObjectName(_fromUtf8("btnSelectRiskValidation"))
        self.gridLayout_9.addWidget(self.btnSelectRiskValidation, 3, 2, 1, 1)
        self.chkRiskValidation = QtGui.QCheckBox(self.tabValidation)
        self.chkRiskValidation.setObjectName(_fromUtf8("chkRiskValidation"))
        self.gridLayout_9.addWidget(self.chkRiskValidation, 3, 0, 1, 1)
        self.label_12 = QtGui.QLabel(self.tabValidation)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.gridLayout_9.addWidget(self.label_12, 2, 0, 1, 1)
        self.btnSelectSimulatedMap = QtGui.QPushButton(self.tabValidation)
        self.btnSelectSimulatedMap.setObjectName(_fromUtf8("btnSelectSimulatedMap"))
        self.gridLayout_9.addWidget(self.btnSelectSimulatedMap, 2, 2, 1, 1)
        self.label_11 = QtGui.QLabel(self.tabValidation)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.gridLayout_9.addWidget(self.label_11, 1, 0, 1, 1)
        self.leReferenceMapPath = QtGui.QLineEdit(self.tabValidation)
        self.leReferenceMapPath.setObjectName(_fromUtf8("leReferenceMapPath"))
        self.gridLayout_9.addWidget(self.leReferenceMapPath, 1, 1, 1, 1)
        self.btnSelectReferenceMap = QtGui.QPushButton(self.tabValidation)
        self.btnSelectReferenceMap.setObjectName(_fromUtf8("btnSelectReferenceMap"))
        self.gridLayout_9.addWidget(self.btnSelectReferenceMap, 1, 2, 1, 1)
        self.leSimulatedMapPath = QtGui.QLineEdit(self.tabValidation)
        self.leSimulatedMapPath.setObjectName(_fromUtf8("leSimulatedMapPath"))
        self.gridLayout_9.addWidget(self.leSimulatedMapPath, 2, 1, 1, 1)
        self.spnValIterCount = QtGui.QSpinBox(self.tabValidation)
        self.spnValIterCount.setMinimum(1)
        self.spnValIterCount.setMaximum(20)
        self.spnValIterCount.setProperty("value", 5)
        self.spnValIterCount.setObjectName(_fromUtf8("spnValIterCount"))
        self.gridLayout_9.addWidget(self.spnValIterCount, 4, 2, 1, 1)
        self.label_13 = QtGui.QLabel(self.tabValidation)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.gridLayout_9.addWidget(self.label_13, 4, 1, 1, 1)
        self.chkCheckPersistentClasses = QtGui.QCheckBox(self.tabValidation)
        self.chkCheckPersistentClasses.setChecked(True)
        self.chkCheckPersistentClasses.setObjectName(_fromUtf8("chkCheckPersistentClasses"))
        self.gridLayout_9.addWidget(self.chkCheckPersistentClasses, 3, 1, 1, 1)
        self.leKappaHisto = QtGui.QLineEdit(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.leKappaHisto.sizePolicy().hasHeightForWidth())
        self.leKappaHisto.setSizePolicy(sizePolicy)
        self.leKappaHisto.setObjectName(_fromUtf8("leKappaHisto"))
        self.gridLayout_9.addWidget(self.leKappaHisto, 3, 5, 1, 1)
        self.label_21 = QtGui.QLabel(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_21.sizePolicy().hasHeightForWidth())
        self.label_21.setSizePolicy(sizePolicy)
        self.label_21.setObjectName(_fromUtf8("label_21"))
        self.gridLayout_9.addWidget(self.label_21, 1, 4, 1, 1)
        self.leKappaCorrectness = QtGui.QLineEdit(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.leKappaCorrectness.sizePolicy().hasHeightForWidth())
        self.leKappaCorrectness.setSizePolicy(sizePolicy)
        self.leKappaCorrectness.setReadOnly(True)
        self.leKappaCorrectness.setObjectName(_fromUtf8("leKappaCorrectness"))
        self.gridLayout_9.addWidget(self.leKappaCorrectness, 1, 5, 1, 1)
        self.label_20 = QtGui.QLabel(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_20.sizePolicy().hasHeightForWidth())
        self.label_20.setSizePolicy(sizePolicy)
        self.label_20.setObjectName(_fromUtf8("label_20"))
        self.gridLayout_9.addWidget(self.label_20, 2, 4, 1, 1)
        self.leKappaLoc = QtGui.QLineEdit(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.leKappaLoc.sizePolicy().hasHeightForWidth())
        self.leKappaLoc.setSizePolicy(sizePolicy)
        self.leKappaLoc.setReadOnly(True)
        self.leKappaLoc.setObjectName(_fromUtf8("leKappaLoc"))
        self.gridLayout_9.addWidget(self.leKappaLoc, 4, 5, 1, 1)
        self.label_22 = QtGui.QLabel(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_22.sizePolicy().hasHeightForWidth())
        self.label_22.setSizePolicy(sizePolicy)
        self.label_22.setObjectName(_fromUtf8("label_22"))
        self.gridLayout_9.addWidget(self.label_22, 3, 4, 1, 1)
        self.label_23 = QtGui.QLabel(self.tabValidation)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_23.sizePolicy().hasHeightForWidth())
        self.label_23.setSizePolicy(sizePolicy)
        self.label_23.setObjectName(_fromUtf8("label_23"))
        self.gridLayout_9.addWidget(self.label_23, 4, 4, 1, 1)
        self.btnKappaCalc = QtGui.QPushButton(self.tabValidation)
        self.btnKappaCalc.setObjectName(_fromUtf8("btnKappaCalc"))
        self.gridLayout_9.addWidget(self.btnKappaCalc, 5, 5, 1, 1)
        self.btnStartValidation = QtGui.QPushButton(self.tabValidation)
        self.btnStartValidation.setObjectName(_fromUtf8("btnStartValidation"))
        self.gridLayout_9.addWidget(self.btnStartValidation, 5, 1, 1, 1)
        self.gridLayout_9.setColumnStretch(1, 2)
        self.gridLayout_9.setColumnStretch(3, 1)
        self.gridLayout_11.addLayout(self.gridLayout_9, 0, 0, 1, 2)
        self.tabWidget.addTab(self.tabValidation, _fromUtf8(""))
        self.tabMessages = QtGui.QWidget()
        self.tabMessages.setObjectName(_fromUtf8("tabMessages"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.tabMessages)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.txtMessages = QtGui.QTextEdit(self.tabMessages)
        self.txtMessages.setUndoRedoEnabled(False)
        self.txtMessages.setReadOnly(True)
        self.txtMessages.setObjectName(_fromUtf8("txtMessages"))
        self.verticalLayout_4.addWidget(self.txtMessages)
        self.tabWidget.addTab(self.tabMessages, _fromUtf8(""))
        self.gridLayout_10.addWidget(self.tabWidget, 0, 0, 1, 2)
        self.progressBar = QtGui.QProgressBar(Dialog)
        self.progressBar.setProperty("value", 0)
        self.progressBar.setObjectName(_fromUtf8("progressBar"))
        self.gridLayout_10.addWidget(self.progressBar, 1, 0, 1, 1)

        self.retranslateUi(Dialog)
        self.tabWidget.setCurrentIndex(4)
        self.widgetStackMethods.setCurrentIndex(-1)
        QtCore.QMetaObject.connectSlotsByName(Dialog)
class Ui_Widget(object):
    def setupUi(self, Widget):
        Widget.setObjectName(_fromUtf8("Widget"))
        Widget.resize(688, 344)
        Widget.setWindowTitle(_fromUtf8(""))
        self.gridLayout = QtGui.QGridLayout(Widget)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.tblMatrix = MolusceTableWidget(Widget)
        self.tblMatrix.setObjectName(_fromUtf8("tblMatrix"))
        self.tblMatrix.setColumnCount(0)
        self.tblMatrix.setRowCount(0)
        self.gridLayout.addWidget(self.tblMatrix, 1, 0, 1, 2)
        self.tblWeights = MolusceTableWidget(Widget)
        self.tblWeights.setObjectName(_fromUtf8("tblWeights"))
        self.tblWeights.setColumnCount(0)
        self.tblWeights.setRowCount(0)
        self.gridLayout.addWidget(self.tblWeights, 3, 0, 1, 2)
        self.label = QtGui.QLabel(Widget)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 4, 0, 1, 1)
        self.spnInitialClass = QtGui.QSpinBox(Widget)
        self.spnInitialClass.setObjectName(_fromUtf8("spnInitialClass"))
        self.gridLayout.addWidget(self.spnInitialClass, 4, 1, 1, 1)
        self.label_2 = QtGui.QLabel(Widget)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout.addWidget(self.label_2, 5, 0, 1, 1)
        self.spnFinalClass = QtGui.QSpinBox(Widget)
        self.spnFinalClass.setObjectName(_fromUtf8("spnFinalClass"))
        self.gridLayout.addWidget(self.spnFinalClass, 5, 1, 1, 1)
        self.btnTrainModel = QtGui.QPushButton(Widget)
        self.btnTrainModel.setObjectName(_fromUtf8("btnTrainModel"))
        self.gridLayout.addWidget(self.btnTrainModel, 6, 1, 1, 1)
        self.label_3 = QtGui.QLabel(Widget)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1)
        self.label_4 = QtGui.QLabel(Widget)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)

        self.retranslateUi(Widget)
        QtCore.QMetaObject.connectSlotsByName(Widget)

    def retranslateUi(self, Widget):
        self.label.setText(QtGui.QApplication.translate("Widget", "From class", None, QtGui.QApplication.UnicodeUTF8))
        self.label_2.setText(QtGui.QApplication.translate("Widget", "To class", None, QtGui.QApplication.UnicodeUTF8))
        self.btnTrainModel.setText(QtGui.QApplication.translate("Widget", "Train model", None, QtGui.QApplication.UnicodeUTF8))
        self.label_3.setText(QtGui.QApplication.translate("Widget", "Pairwise Comparison Matrix", None, QtGui.QApplication.UnicodeUTF8))
        self.label_4.setText(QtGui.QApplication.translate("Widget", "Weights Matrix", None, QtGui.QApplication.UnicodeUTF8))
class EditCrossTabulation(QtGui.QDialog):
    def __init__(self):
        QtGui.QDialog.__init__(self)

        self.resize(777, 467)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.crossTabulation = MolusceTableWidget(self)
        # show empty table
        self.verticalLayout.addWidget(self.crossTabulation)

        self.horizontalLayout = QtGui.QHBoxLayout()
        self.openButton = QtGui.QPushButton("Open CSV", self)
        self.horizontalLayout.addWidget(self.openButton)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem)
        self.saveButton = QtGui.QPushButton("Save", self)
        self.horizontalLayout.addWidget(self.saveButton)
        self.closeButton = QtGui.QPushButton("Close", self)
        self.horizontalLayout.addWidget(self.closeButton)
        self.verticalLayout.addLayout(self.horizontalLayout)

        self.closeButton.clicked.connect(self.close)
        self.openButton.clicked.connect(self.handleOpen)
        self.saveButton.clicked.connect(self.handleSave)
        self.initShortcuts()

        self.setWindowTitle("File Dialog")
        self.show()

    def handleSave(self):
        savefile = QtGui.QFileDialog.getSaveFileName(self, "Save File", "", "CSV(*.csv)")
        if savefile != "":
            with open(unicode(savefile), "wb") as stream:
                writer = csv.writer(stream)
                for row in range(self.crossTabulation.rowCount()):
                    rowdata = []
                    for column in range(self.crossTabulation.columnCount()):
                        item = self.crossTabulation.item(row, column)
                        if item is not None:
                            rowdata.append(unicode(item.text()).encode("utf8"))
                        else:
                            rowdata.append("")
                    writer.writerow(rowdata)

    def handleOpen(self):
        filename = QtGui.QFileDialog.getOpenFileName(self, "Open File", "", "CSV(*.csv)")
        if filename != "":
            with open(unicode(filename), "rb") as stream:
                self.crossTabulation.setRowCount(0)
                self.crossTabulation.setColumnCount(0)
                for rowdata in csv.reader(stream):
                    row = self.crossTabulation.rowCount()
                    self.crossTabulation.insertRow(row)
                    self.crossTabulation.setColumnCount(len(rowdata))
                    for column, data in enumerate(rowdata):
                        item = QtGui.QTableWidgetItem(data.decode("utf8"))
                        self.crossTabulation.setItem(row, column, item)

    def openCSV(self):
        labels = []
        checkLabels = False
        setting = QtCore.QSettings()
        path = unicode(setting.value("/Processing/LastInputPath"))
        filename = QtGui.QFileDialog.getOpenFileName(self, self.tr("Open File"), path, self.tr("Text CSV (*.csv)"))
        if filename != "":
            lines = codecs.open(filename, "r", encoding="utf-8")
            line = lines.readline().strip("\n").strip("\r")
            iRow = 0
            try:
                while line != "":
                    tokens = line.split(",")
                    tokensLength = len(tokens)
                    if checkLabels == False:
                        for i in range(1, tokensLength):
                            labels.append(tokens[i])
                        self.crossTabulation.setRowCount(tokensLength - 1)
                        self.crossTabulation.setColumnCount(tokensLength - 1)
                        self.crossTabulation.setHorizontalHeaderLabels(labels)
                        self.crossTabulation.setVerticalHeaderLabels(labels)
                        checkLabels = True
                    else:
                        for i in range(1, tokensLength):
                            item = QtGui.QTableWidgetItem(tokens[i])
                            self.crossTabulation.setItem(iRow, i - 1, item)
                        iRow += 1
                    line = lines.readline().strip("\n").strip("\r")
            except Exception, e:
                raise e
class Ui_Widget(object):
    def setupUi(self, Widget):
        Widget.setObjectName(_fromUtf8("Widget"))
        Widget.resize(684, 368)
        Widget.setWindowTitle(_fromUtf8(""))
        self.gridLayout = QtGui.QGridLayout(Widget)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label = QtGui.QLabel(Widget)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 3, 0, 1, 1)
        self.btnTrainModel = QtGui.QPushButton(Widget)
        self.btnTrainModel.setObjectName(_fromUtf8("btnTrainModel"))
        self.gridLayout.addWidget(self.btnTrainModel, 12, 0, 1, 2)
        self.pteWeightsInform = QtGui.QPlainTextEdit(Widget)
        self.pteWeightsInform.setObjectName(_fromUtf8("pteWeightsInform"))
        self.gridLayout.addWidget(self.pteWeightsInform, 11, 0, 1, 2)
        self.btnResetBins = QtGui.QPushButton(Widget)
        self.btnResetBins.setObjectName(_fromUtf8("btnResetBins"))
        self.gridLayout.addWidget(self.btnResetBins, 5, 0, 1, 1)
        self.label_4 = QtGui.QLabel(Widget)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout.addWidget(self.label_4, 6, 0, 1, 1)
        self.tblReclass = MolusceTableWidget(Widget)
        self.tblReclass.setSelectionMode(QtGui.QAbstractItemView.SingleSelection)
        self.tblReclass.setObjectName(_fromUtf8("tblReclass"))
        self.tblReclass.setColumnCount(5)
        self.tblReclass.setRowCount(0)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(0, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(1, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(2, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(3, item)
        item = QtGui.QTableWidgetItem()
        self.tblReclass.setHorizontalHeaderItem(4, item)
        self.tblReclass.horizontalHeader().setStretchLastSection(True)
        self.gridLayout.addWidget(self.tblReclass, 4, 0, 1, 1)

        self.retranslateUi(Widget)
        QtCore.QMetaObject.connectSlotsByName(Widget)

    def retranslateUi(self, Widget):
        self.label.setText(QtGui.QApplication.translate("Widget", "Enter either Number of intervals (min 2) or Range breaks:", None, QtGui.QApplication.UnicodeUTF8))
        self.btnTrainModel.setText(QtGui.QApplication.translate("Widget", "Train model", None, QtGui.QApplication.UnicodeUTF8))
        self.btnResetBins.setText(QtGui.QApplication.translate("Widget", "Calculate Range breaks", None, QtGui.QApplication.UnicodeUTF8))
        self.label_4.setText(QtGui.QApplication.translate("Widget", "Weights Information:", None, QtGui.QApplication.UnicodeUTF8))
        item = self.tblReclass.horizontalHeaderItem(0)
        item.setText(QtGui.QApplication.translate("Widget", "Factor", None, QtGui.QApplication.UnicodeUTF8))
        item = self.tblReclass.horizontalHeaderItem(1)
        item.setText(QtGui.QApplication.translate("Widget", "Range min", None, QtGui.QApplication.UnicodeUTF8))
        item = self.tblReclass.horizontalHeaderItem(2)
        item.setText(QtGui.QApplication.translate("Widget", "Range max", None, QtGui.QApplication.UnicodeUTF8))
        item = self.tblReclass.horizontalHeaderItem(3)
        item.setText(QtGui.QApplication.translate("Widget", "Number of intervals", None, QtGui.QApplication.UnicodeUTF8))
        item = self.tblReclass.horizontalHeaderItem(4)
        item.setText(QtGui.QApplication.translate("Widget", "Range breaks", None, QtGui.QApplication.UnicodeUTF8))