Exemplo n.º 1
0
    def __init__(self, iface, batch_plotting):
        """ Initialize dialog data and event handlers
        """
        super(BatchPlottingDialog, self).__init__()
        self.ui = Ui_BatchPlottingDialog()
        self.ui.setupUi(self)
        self.iface = iface
        self.ui.OutputTab.setCurrentIndex(2)
        # if batch_plotting is True -> plotting by selected polygons
        #                     False -> plot map canvas
        self.batch_plotting = batch_plotting
        if not self.batch_plotting:
            self.setWindowTitle(tr("Plot by Template"))
            self.ui.OutputTab.setTabEnabled(0, False)
            self.ui.OutputTab.setTabEnabled(1, False)

        # event handlers
        self.ui.PlotButton.clicked.connect(self.onPlotButton)
        self.ui.TempDirButton.clicked.connect(self.onTempDirButton)
        self.ui.CloseButton.clicked.connect(self.onCloseButton)
        self.ui.TemplateList.setSortingEnabled(True)

        # set paths
        self.pdfpath = ""

        if self.batch_plotting:
            self.ui.OutputPDFEdit.setText(
                QgsAtlasComposition(None).filenamePattern())
            self.ui.SingleFileCheckbox.stateChanged.connect(
                self.changedSingleFileCheckbox)
        else:
            # set scale to map canvas scale
            self.ui.ScaleCombo.insertItem(
                0, "%d" % round(self.iface.mapCanvas().scale()))
            self.ui.ScaleCombo.insertItem(0, "<extent>")
            self.ui.ScaleCombo.setCurrentIndex(0)

        self.printer = None