def __init__(self, label, parent=None):
        super().__init__(parent)
        layout = QHBoxLayout(self)
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setAlignment(Qt.AlignLeft)

        if label:
            self.label = QLabel(label, self)
            self.label.setAlignment(Qt.AlignRight | Qt.AlignCenter)
            layout.addWidget(self.label)

        self.spinbox = QgsDoubleSpinBox(self)
        self.spinbox.setSingleStep(1)
        self.spinbox.setValue(0)
        self.spinbox.setMinimum(0)
        self.spinbox.setMaximum(1000000000)
        self.spinbox.setDecimals(6)
        self.spinbox.setShowClearButton(False)
        self.spinbox.setSizePolicy(QSizePolicy.MinimumExpanding,
                                   QSizePolicy.Preferred)
        layout.addWidget(self.spinbox)

        # connect signals
        self.spinbox.installEventFilter(self)
        self.spinbox.valueChanged.connect(self.distanceChanged.emit)

        # config focus
        self.setFocusProxy(self.spinbox)
Esempio n. 2
0
 def keyPressEvent(self, event):
     b = self.property("bandNr")
     if event.key() == Qt.Key_Return or event.key() == Qt.Key_Enter:
         if is_number(self.text().replace(',', '.')):
             self.setValue(float(self.text().replace(',', '.')))
             self.user_hit_enter.emit()
     else:
         QgsDoubleSpinBox.keyPressEvent(self, event)
Esempio n. 3
0
def widget_for_field(field_type: QVariant) -> QWidget:
    q_combo_box = QComboBox()
    q_combo_box.setEditable(True)

    if field_type == QVariant.Bool:
        return QCheckBox()
    elif field_type in [
        QVariant.Int,
        QVariant.UInt,
        QVariant.LongLong,
        QVariant.ULongLong,
    ]:
        spin_box = QgsSpinBox()
        spin_box.setMaximum(2147483647)
        return spin_box
    elif field_type == QVariant.Double:
        spin_box = QgsDoubleSpinBox()
        spin_box.setMaximum(2147483647)
        return spin_box
    elif field_type == QVariant.String:
        return q_combo_box
    elif field_type == QVariant.Date:
        return QDateEdit()
    elif field_type == QVariant.DateTime:
        return QgsDateTimeEdit()
    elif field_type == QVariant.Time:
        return QgsDateTimeEdit()
    elif field_type == QVariant.ByteArray:
        return q_combo_box
    else:
        return q_combo_box
Esempio n. 4
0
 def createEditor(self, parent, options, index):
     setting = index.model().data(index, Qt.UserRole)
     if setting.valuetype == Setting.FOLDER:
         return FileDirectorySelector(parent)
     elif setting.valuetype == Setting.FILE:
         return FileDirectorySelector(parent, True)
     elif setting.valuetype == Setting.SELECTION:
         combo = QComboBox(parent)
         combo.addItems(setting.options)
         return combo
     elif setting.valuetype == Setting.MULTIPLE_FOLDERS:
         return MultipleDirectorySelector(parent)
     else:
         value = self.convertValue(index.model().data(index, Qt.EditRole))
         if isinstance(value, int):
             spnBox = QgsSpinBox(parent)
             spnBox.setRange(-999999999, 999999999)
             return spnBox
         elif isinstance(value, float):
             spnBox = QgsDoubleSpinBox(parent)
             spnBox.setRange(-999999999.999999, 999999999.999999)
             spnBox.setDecimals(6)
             return spnBox
         elif isinstance(value, str):
             return QLineEdit(parent)
Esempio n. 5
0
    def __init__(self, parent, composerObject):
        QtGui.QWidget.__init__(self, parent)
        self.mComposerObject = composerObject
        self.setObjectName(_fromUtf8("QgsComposerItemWidgetBase"))
        self.resize(290, 847)
        self.verticalLayout_2 = QtGui.QVBoxLayout(self)
        self.verticalLayout_2.setMargin(0)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.mGeneralOptionsGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mGeneralOptionsGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mGeneralOptionsGroupBox.setProperty("syncGroup",
                                                 _fromUtf8("composeritem"))
        self.mGeneralOptionsGroupBox.setProperty("collapsed", True)
        self.mGeneralOptionsGroupBox.setObjectName(
            _fromUtf8("mGeneralOptionsGroupBox"))
        self.verticalLayout = QtGui.QVBoxLayout(self.mGeneralOptionsGroupBox)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.gridLayout_3 = QtGui.QGridLayout()
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.mWidthLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mWidthLabel.setObjectName(_fromUtf8("mWidthLabel"))
        self.gridLayout_3.addWidget(self.mWidthLabel, 3, 0, 1, 1)
        self.mXLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mXLabel.setObjectName(_fromUtf8("mXLabel"))
        self.gridLayout_3.addWidget(self.mXLabel, 1, 0, 1, 1)
        self.mHeightLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mHeightLabel.setObjectName(_fromUtf8("mHeightLabel"))
        self.gridLayout_3.addWidget(self.mHeightLabel, 4, 0, 1, 1)
        self.mYLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mYLabel.setObjectName(_fromUtf8("mYLabel"))
        self.gridLayout_3.addWidget(self.mYLabel, 2, 0, 1, 1)
        self.mPageLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mPageLabel.setObjectName(_fromUtf8("mPageLabel"))
        self.gridLayout_3.addWidget(self.mPageLabel, 0, 0, 1, 1)
        self.mXPositionDDBtn = QgsDataDefinedButton(
            self.mGeneralOptionsGroupBox)
        self.mXPositionDDBtn.setObjectName(_fromUtf8("mXPositionDDBtn"))
        self.gridLayout_3.addWidget(self.mXPositionDDBtn, 1, 3, 1, 1)
        self.mYPositionDDBtn = QgsDataDefinedButton(
            self.mGeneralOptionsGroupBox)
        self.mYPositionDDBtn.setObjectName(_fromUtf8("mYPositionDDBtn"))
        self.gridLayout_3.addWidget(self.mYPositionDDBtn, 2, 3, 1, 1)
        self.mWidthDDBtn = QgsDataDefinedButton(self.mGeneralOptionsGroupBox)
        self.mWidthDDBtn.setObjectName(_fromUtf8("mWidthDDBtn"))
        self.gridLayout_3.addWidget(self.mWidthDDBtn, 3, 3, 1, 1)
        self.mHeightDDBtn = QgsDataDefinedButton(self.mGeneralOptionsGroupBox)
        self.mHeightDDBtn.setObjectName(_fromUtf8("mHeightDDBtn"))
        self.gridLayout_3.addWidget(self.mHeightDDBtn, 4, 3, 1, 1)
        self.mPageSpinBox = QgsSpinBox(self.mGeneralOptionsGroupBox)
        self.mPageSpinBox.setMinimum(1)
        self.mPageSpinBox.setProperty("showClearButton", False)
        self.mPageSpinBox.setObjectName(_fromUtf8("mPageSpinBox"))
        self.gridLayout_3.addWidget(self.mPageSpinBox, 0, 1, 1, 3)
        self.mWidthSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mWidthSpin.setDecimals(3)
        self.mWidthSpin.setMaximum(9999999.0)
        self.mWidthSpin.setProperty("showClearButton", False)
        self.mWidthSpin.setObjectName(_fromUtf8("mWidthSpin"))
        self.gridLayout_3.addWidget(self.mWidthSpin, 3, 1, 1, 2)
        self.mHeightSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mHeightSpin.setDecimals(3)
        self.mHeightSpin.setMaximum(9999999.0)
        self.mHeightSpin.setProperty("showClearButton", False)
        self.mHeightSpin.setObjectName(_fromUtf8("mHeightSpin"))
        self.gridLayout_3.addWidget(self.mHeightSpin, 4, 1, 1, 2)
        self.mYPosSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mYPosSpin.setDecimals(3)
        self.mYPosSpin.setMinimum(-9999999.0)
        self.mYPosSpin.setMaximum(9999999.0)
        self.mYPosSpin.setProperty("showClearButton", False)
        self.mYPosSpin.setObjectName(_fromUtf8("mYPosSpin"))
        self.gridLayout_3.addWidget(self.mYPosSpin, 2, 1, 1, 2)
        self.mXPosSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mXPosSpin.setDecimals(3)
        self.mXPosSpin.setMinimum(-9999999.0)
        self.mXPosSpin.setMaximum(9999999.0)
        self.mXPosSpin.setProperty("showClearButton", False)
        self.mXPosSpin.setObjectName(_fromUtf8("mXPosSpin"))
        self.gridLayout_3.addWidget(self.mXPosSpin, 1, 1, 1, 2)
        self.gridLayout_3.setColumnStretch(1, 1)
        self.gridLayout_3.setColumnStretch(2, 1)
        self.gridLayout_3.setColumnStretch(3, 1)
        self.verticalLayout.addLayout(self.gridLayout_3)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.label_2 = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.label_2.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft
                                  | QtCore.Qt.AlignVCenter)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.horizontalLayout_7.addWidget(self.label_2)
        self.gridLayout = QtGui.QGridLayout()
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.mUpperMiddleCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mUpperMiddleCheckBox.sizePolicy().hasHeightForWidth())
        self.mUpperMiddleCheckBox.setSizePolicy(sizePolicy)
        self.mUpperMiddleCheckBox.setText(_fromUtf8(""))
        self.mUpperMiddleCheckBox.setObjectName(
            _fromUtf8("mUpperMiddleCheckBox"))
        self.gridLayout.addWidget(self.mUpperMiddleCheckBox, 0, 1, 1, 1)
        self.mMiddleRightCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMiddleRightCheckBox.sizePolicy().hasHeightForWidth())
        self.mMiddleRightCheckBox.setSizePolicy(sizePolicy)
        self.mMiddleRightCheckBox.setText(_fromUtf8(""))
        self.mMiddleRightCheckBox.setObjectName(
            _fromUtf8("mMiddleRightCheckBox"))
        self.gridLayout.addWidget(self.mMiddleRightCheckBox, 1, 2, 1, 1)
        self.mMiddleCheckBox = QtGui.QCheckBox(self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMiddleCheckBox.sizePolicy().hasHeightForWidth())
        self.mMiddleCheckBox.setSizePolicy(sizePolicy)
        self.mMiddleCheckBox.setText(_fromUtf8(""))
        self.mMiddleCheckBox.setObjectName(_fromUtf8("mMiddleCheckBox"))
        self.gridLayout.addWidget(self.mMiddleCheckBox, 1, 1, 1, 1)
        self.mUpperRightCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mUpperRightCheckBox.sizePolicy().hasHeightForWidth())
        self.mUpperRightCheckBox.setSizePolicy(sizePolicy)
        self.mUpperRightCheckBox.setText(_fromUtf8(""))
        self.mUpperRightCheckBox.setObjectName(
            _fromUtf8("mUpperRightCheckBox"))
        self.gridLayout.addWidget(self.mUpperRightCheckBox, 0, 2, 1, 1)
        self.mLowerMiddleCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mLowerMiddleCheckBox.sizePolicy().hasHeightForWidth())
        self.mLowerMiddleCheckBox.setSizePolicy(sizePolicy)
        self.mLowerMiddleCheckBox.setText(_fromUtf8(""))
        self.mLowerMiddleCheckBox.setObjectName(
            _fromUtf8("mLowerMiddleCheckBox"))
        self.gridLayout.addWidget(self.mLowerMiddleCheckBox, 2, 1, 1, 1)
        self.mLowerRightCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mLowerRightCheckBox.sizePolicy().hasHeightForWidth())
        self.mLowerRightCheckBox.setSizePolicy(sizePolicy)
        self.mLowerRightCheckBox.setText(_fromUtf8(""))
        self.mLowerRightCheckBox.setObjectName(
            _fromUtf8("mLowerRightCheckBox"))
        self.gridLayout.addWidget(self.mLowerRightCheckBox, 2, 2, 1, 1)
        self.mUpperLeftCheckBox = QtGui.QCheckBox(self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mUpperLeftCheckBox.sizePolicy().hasHeightForWidth())
        self.mUpperLeftCheckBox.setSizePolicy(sizePolicy)
        self.mUpperLeftCheckBox.setText(_fromUtf8(""))
        self.mUpperLeftCheckBox.setObjectName(_fromUtf8("mUpperLeftCheckBox"))
        self.gridLayout.addWidget(self.mUpperLeftCheckBox, 0, 0, 1, 1)
        self.mLowerLeftCheckBox = QtGui.QCheckBox(self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mLowerLeftCheckBox.sizePolicy().hasHeightForWidth())
        self.mLowerLeftCheckBox.setSizePolicy(sizePolicy)
        self.mLowerLeftCheckBox.setText(_fromUtf8(""))
        self.mLowerLeftCheckBox.setObjectName(_fromUtf8("mLowerLeftCheckBox"))
        self.gridLayout.addWidget(self.mLowerLeftCheckBox, 2, 0, 1, 1)
        self.mMiddleLeftCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMiddleLeftCheckBox.sizePolicy().hasHeightForWidth())
        self.mMiddleLeftCheckBox.setSizePolicy(sizePolicy)
        self.mMiddleLeftCheckBox.setText(_fromUtf8(""))
        self.mMiddleLeftCheckBox.setObjectName(
            _fromUtf8("mMiddleLeftCheckBox"))
        self.gridLayout.addWidget(self.mMiddleLeftCheckBox, 1, 0, 1, 1)
        self.horizontalLayout_7.addLayout(self.gridLayout)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_7.addItem(spacerItem)
        self.verticalLayout.addLayout(self.horizontalLayout_7)
        self.verticalLayout_2.addWidget(self.mGeneralOptionsGroupBox)
        self.mTransformsGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mTransformsGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mTransformsGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mTransformsGroupBox.setProperty("collapsed", True)
        self.mTransformsGroupBox.setObjectName(
            _fromUtf8("mTransformsGroupBox"))
        self.gridLayout_5 = QtGui.QGridLayout(self.mTransformsGroupBox)
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.label = QtGui.QLabel(self.mTransformsGroupBox)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout_5.addWidget(self.label, 0, 0, 1, 1)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.mItemRotationSpinBox = QgsDoubleSpinBox(self.mTransformsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mItemRotationSpinBox.sizePolicy().hasHeightForWidth())
        self.mItemRotationSpinBox.setSizePolicy(sizePolicy)
        self.mItemRotationSpinBox.setMaximum(360.0)
        self.mItemRotationSpinBox.setObjectName(
            _fromUtf8("mItemRotationSpinBox"))
        self.horizontalLayout_4.addWidget(self.mItemRotationSpinBox)
        self.mItemRotationDDBtn = QgsDataDefinedButton(
            self.mTransformsGroupBox)
        self.mItemRotationDDBtn.setObjectName(_fromUtf8("mItemRotationDDBtn"))
        self.horizontalLayout_4.addWidget(self.mItemRotationDDBtn)
        self.gridLayout_5.addLayout(self.horizontalLayout_4, 0, 1, 1, 1)
        self.gridLayout_5.setColumnStretch(1, 1)
        self.verticalLayout_2.addWidget(self.mTransformsGroupBox)
        self.mFrameGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mFrameGroupBox.setCheckable(True)
        self.mFrameGroupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.mFrameGroupBox.setProperty("collapsed", True)
        self.mFrameGroupBox.setObjectName(_fromUtf8("mFrameGroupBox"))
        self.gridLayout_6 = QtGui.QGridLayout(self.mFrameGroupBox)
        self.gridLayout_6.setObjectName(_fromUtf8("gridLayout_6"))
        self.label_3 = QtGui.QLabel(self.mFrameGroupBox)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout_6.addWidget(self.label_3, 0, 0, 1, 1)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.mFrameColorButton = QgsColorButtonV2(self.mFrameGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mFrameColorButton.sizePolicy().hasHeightForWidth())
        self.mFrameColorButton.setSizePolicy(sizePolicy)
        self.mFrameColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mFrameColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mFrameColorButton.setText(_fromUtf8(""))
        self.mFrameColorButton.setObjectName(_fromUtf8("mFrameColorButton"))
        self.horizontalLayout_6.addWidget(self.mFrameColorButton)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem1)
        self.gridLayout_6.addLayout(self.horizontalLayout_6, 0, 1, 1, 1)
        self.mOutlineWidthLabel = QtGui.QLabel(self.mFrameGroupBox)
        self.mOutlineWidthLabel.setWordWrap(True)
        self.mOutlineWidthLabel.setObjectName(_fromUtf8("mOutlineWidthLabel"))
        self.gridLayout_6.addWidget(self.mOutlineWidthLabel, 1, 0, 1, 1)
        self.mOutlineWidthSpinBox = QgsDoubleSpinBox(self.mFrameGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mOutlineWidthSpinBox.sizePolicy().hasHeightForWidth())
        self.mOutlineWidthSpinBox.setSizePolicy(sizePolicy)
        self.mOutlineWidthSpinBox.setSingleStep(0.1)
        self.mOutlineWidthSpinBox.setProperty("showClearButton", False)
        self.mOutlineWidthSpinBox.setObjectName(
            _fromUtf8("mOutlineWidthSpinBox"))
        self.gridLayout_6.addWidget(self.mOutlineWidthSpinBox, 1, 1, 1, 1)
        self.label_8 = QtGui.QLabel(self.mFrameGroupBox)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.gridLayout_6.addWidget(self.label_8, 2, 0, 1, 1)
        self.mFrameJoinStyleCombo = QgsPenJoinStyleComboBox(
            self.mFrameGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mFrameJoinStyleCombo.sizePolicy().hasHeightForWidth())
        self.mFrameJoinStyleCombo.setSizePolicy(sizePolicy)
        self.mFrameJoinStyleCombo.setObjectName(
            _fromUtf8("mFrameJoinStyleCombo"))
        self.gridLayout_6.addWidget(self.mFrameJoinStyleCombo, 2, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.mFrameGroupBox)
        self.mBackgroundGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mBackgroundGroupBox.setCheckable(True)
        self.mBackgroundGroupBox.setChecked(True)
        self.mBackgroundGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mBackgroundGroupBox.setProperty("collapsed", True)
        self.mBackgroundGroupBox.setObjectName(
            _fromUtf8("mBackgroundGroupBox"))
        self.gridLayout_7 = QtGui.QGridLayout(self.mBackgroundGroupBox)
        self.gridLayout_7.setObjectName(_fromUtf8("gridLayout_7"))
        self.label_4 = QtGui.QLabel(self.mBackgroundGroupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout_7.addWidget(self.label_4, 0, 0, 1, 1)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.mBackgroundColorButton = QgsColorButtonV2(
            self.mBackgroundGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mBackgroundColorButton.sizePolicy().hasHeightForWidth())
        self.mBackgroundColorButton.setSizePolicy(sizePolicy)
        self.mBackgroundColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mBackgroundColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mBackgroundColorButton.setText(_fromUtf8(""))
        self.mBackgroundColorButton.setObjectName(
            _fromUtf8("mBackgroundColorButton"))
        self.horizontalLayout_5.addWidget(self.mBackgroundColorButton)
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_5.addItem(spacerItem2)
        self.gridLayout_7.addLayout(self.horizontalLayout_5, 0, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.mBackgroundGroupBox)
        self.groupBox = QgsCollapsibleGroupBoxBasic(self)
        self.groupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.groupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.groupBox.setProperty("collapsed", True)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.gridLayout_8 = QtGui.QGridLayout(self.groupBox)
        self.gridLayout_8.setObjectName(_fromUtf8("gridLayout_8"))
        self.mItemIdLabel = QtGui.QLabel(self.groupBox)
        self.mItemIdLabel.setObjectName(_fromUtf8("mItemIdLabel"))
        self.gridLayout_8.addWidget(self.mItemIdLabel, 0, 0, 1, 1)
        self.mItemIdLineEdit = QtGui.QLineEdit(self.groupBox)
        self.mItemIdLineEdit.setObjectName(_fromUtf8("mItemIdLineEdit"))
        self.gridLayout_8.addWidget(self.mItemIdLineEdit, 0, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.groupBox)
        self.groupRendering = QgsCollapsibleGroupBoxBasic(self)
        self.groupRendering.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.groupRendering.setProperty("collapsed", True)
        self.groupRendering.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.groupRendering.setObjectName(_fromUtf8("groupRendering"))
        self.gridLayout_4 = QtGui.QGridLayout(self.groupRendering)
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.labelBlendMode = QtGui.QLabel(self.groupRendering)
        self.labelBlendMode.setObjectName(_fromUtf8("labelBlendMode"))
        self.gridLayout_4.addWidget(self.labelBlendMode, 0, 0, 1, 1)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.mBlendModeCombo = QgsBlendModeComboBox(self.groupRendering)
        self.mBlendModeCombo.setObjectName(_fromUtf8("mBlendModeCombo"))
        self.horizontalLayout_3.addWidget(self.mBlendModeCombo)
        self.mBlendModeDDBtn = QgsDataDefinedButton(self.groupRendering)
        self.mBlendModeDDBtn.setObjectName(_fromUtf8("mBlendModeDDBtn"))
        self.horizontalLayout_3.addWidget(self.mBlendModeDDBtn)
        self.gridLayout_4.addLayout(self.horizontalLayout_3, 0, 1, 1, 1)
        self.labelTransparency = QtGui.QLabel(self.groupRendering)
        self.labelTransparency.setObjectName(_fromUtf8("labelTransparency"))
        self.gridLayout_4.addWidget(self.labelTransparency, 1, 0, 1, 1)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.mTransparencySlider = QtGui.QSlider(self.groupRendering)
        self.mTransparencySlider.setMaximum(100)
        self.mTransparencySlider.setOrientation(QtCore.Qt.Horizontal)
        self.mTransparencySlider.setObjectName(
            _fromUtf8("mTransparencySlider"))
        self.horizontalLayout_2.addWidget(self.mTransparencySlider)
        self.mTransparencySpnBx = QgsSpinBox(self.groupRendering)
        self.mTransparencySpnBx.setMinimumSize(QtCore.QSize(80, 25))
        self.mTransparencySpnBx.setMaximum(100)
        self.mTransparencySpnBx.setObjectName(_fromUtf8("mTransparencySpnBx"))
        self.horizontalLayout_2.addWidget(self.mTransparencySpnBx)
        self.mTransparencyDDBtn = QgsDataDefinedButton(self.groupRendering)
        self.mTransparencyDDBtn.setObjectName(_fromUtf8("mTransparencyDDBtn"))
        self.horizontalLayout_2.addWidget(self.mTransparencyDDBtn)
        self.gridLayout_4.addLayout(self.horizontalLayout_2, 1, 1, 1, 1)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.mExcludeFromPrintsCheckBox = QtGui.QCheckBox(self.groupRendering)
        self.mExcludeFromPrintsCheckBox.setObjectName(
            _fromUtf8("mExcludeFromPrintsCheckBox"))
        self.horizontalLayout.addWidget(self.mExcludeFromPrintsCheckBox)
        self.mExcludePrintsDDBtn = QgsDataDefinedButton(self.groupRendering)
        self.mExcludePrintsDDBtn.setObjectName(
            _fromUtf8("mExcludePrintsDDBtn"))
        self.horizontalLayout.addWidget(self.mExcludePrintsDDBtn)
        self.gridLayout_4.addLayout(self.horizontalLayout, 2, 0, 1, 2)
        self.verticalLayout_2.addWidget(self.groupRendering)
        self.groupBox_3 = QgsCollapsibleGroupBox(self)
        self.groupBox_3.setObjectName(_fromUtf8("groupBox_3"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.groupBox_3)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.mVariableEditor = QgsVariableEditorWidget(self.groupBox_3)
        self.mVariableEditor.setMinimumSize(QtCore.QSize(0, 200))
        self.mVariableEditor.setObjectName(_fromUtf8("mVariableEditor"))
        self.verticalLayout_4.addWidget(self.mVariableEditor)
        self.verticalLayout_2.addWidget(self.groupBox_3)
        spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                        QtGui.QSizePolicy.MinimumExpanding)
        self.verticalLayout_2.addItem(spacerItem3)
        self.mOutlineWidthLabel.setBuddy(self.mOutlineWidthSpinBox)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.mGeneralOptionsGroupBox, self.mPageSpinBox)
        self.setTabOrder(self.mPageSpinBox, self.mXPosSpin)
        self.setTabOrder(self.mXPosSpin, self.mXPositionDDBtn)
        self.setTabOrder(self.mXPositionDDBtn, self.mYPosSpin)
        self.setTabOrder(self.mYPosSpin, self.mYPositionDDBtn)
        self.setTabOrder(self.mYPositionDDBtn, self.mWidthSpin)
        self.setTabOrder(self.mWidthSpin, self.mWidthDDBtn)
        self.setTabOrder(self.mWidthDDBtn, self.mHeightSpin)
        self.setTabOrder(self.mHeightSpin, self.mHeightDDBtn)
        self.setTabOrder(self.mHeightDDBtn, self.mUpperLeftCheckBox)
        self.setTabOrder(self.mUpperLeftCheckBox, self.mUpperMiddleCheckBox)
        self.setTabOrder(self.mUpperMiddleCheckBox, self.mUpperRightCheckBox)
        self.setTabOrder(self.mUpperRightCheckBox, self.mMiddleLeftCheckBox)
        self.setTabOrder(self.mMiddleLeftCheckBox, self.mMiddleCheckBox)
        self.setTabOrder(self.mMiddleCheckBox, self.mMiddleRightCheckBox)
        self.setTabOrder(self.mMiddleRightCheckBox, self.mLowerLeftCheckBox)
        self.setTabOrder(self.mLowerLeftCheckBox, self.mLowerMiddleCheckBox)
        self.setTabOrder(self.mLowerMiddleCheckBox, self.mLowerRightCheckBox)
        self.setTabOrder(self.mLowerRightCheckBox, self.mTransformsGroupBox)
        self.setTabOrder(self.mTransformsGroupBox, self.mItemRotationSpinBox)
        self.setTabOrder(self.mItemRotationSpinBox, self.mItemRotationDDBtn)
        self.setTabOrder(self.mItemRotationDDBtn, self.mFrameGroupBox)
        self.setTabOrder(self.mFrameGroupBox, self.mFrameColorButton)
        self.setTabOrder(self.mFrameColorButton, self.mOutlineWidthSpinBox)
        self.setTabOrder(self.mOutlineWidthSpinBox, self.mFrameJoinStyleCombo)
        self.setTabOrder(self.mFrameJoinStyleCombo, self.mBackgroundGroupBox)
        self.setTabOrder(self.mBackgroundGroupBox, self.mBackgroundColorButton)
        self.setTabOrder(self.mBackgroundColorButton, self.groupBox)
        self.setTabOrder(self.groupBox, self.mItemIdLineEdit)
        self.setTabOrder(self.mItemIdLineEdit, self.groupRendering)
        self.setTabOrder(self.groupRendering, self.mBlendModeCombo)
        self.setTabOrder(self.mBlendModeCombo, self.mBlendModeDDBtn)
        self.setTabOrder(self.mBlendModeDDBtn, self.mTransparencySlider)
        self.setTabOrder(self.mTransparencySlider, self.mTransparencySpnBx)
        self.setTabOrder(self.mTransparencySpnBx, self.mTransparencyDDBtn)
        self.setTabOrder(self.mTransparencyDDBtn,
                         self.mExcludeFromPrintsCheckBox)
        self.setTabOrder(self.mExcludeFromPrintsCheckBox,
                         self.mExcludePrintsDDBtn)
        # self.mComposerObject = None
        self.groupBox_3.setVisible(False)
Esempio n. 6
0
class Ui_QgsComposerItemWidgetBase(QtGui.QWidget):
    def __init__(self, parent, composerObject):
        QtGui.QWidget.__init__(self, parent)
        self.mComposerObject = composerObject
        self.setObjectName(_fromUtf8("QgsComposerItemWidgetBase"))
        self.resize(290, 847)
        self.verticalLayout_2 = QtGui.QVBoxLayout(self)
        self.verticalLayout_2.setMargin(0)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.mGeneralOptionsGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mGeneralOptionsGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mGeneralOptionsGroupBox.setProperty("syncGroup",
                                                 _fromUtf8("composeritem"))
        self.mGeneralOptionsGroupBox.setProperty("collapsed", True)
        self.mGeneralOptionsGroupBox.setObjectName(
            _fromUtf8("mGeneralOptionsGroupBox"))
        self.verticalLayout = QtGui.QVBoxLayout(self.mGeneralOptionsGroupBox)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.gridLayout_3 = QtGui.QGridLayout()
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.mWidthLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mWidthLabel.setObjectName(_fromUtf8("mWidthLabel"))
        self.gridLayout_3.addWidget(self.mWidthLabel, 3, 0, 1, 1)
        self.mXLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mXLabel.setObjectName(_fromUtf8("mXLabel"))
        self.gridLayout_3.addWidget(self.mXLabel, 1, 0, 1, 1)
        self.mHeightLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mHeightLabel.setObjectName(_fromUtf8("mHeightLabel"))
        self.gridLayout_3.addWidget(self.mHeightLabel, 4, 0, 1, 1)
        self.mYLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mYLabel.setObjectName(_fromUtf8("mYLabel"))
        self.gridLayout_3.addWidget(self.mYLabel, 2, 0, 1, 1)
        self.mPageLabel = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.mPageLabel.setObjectName(_fromUtf8("mPageLabel"))
        self.gridLayout_3.addWidget(self.mPageLabel, 0, 0, 1, 1)
        self.mXPositionDDBtn = QgsDataDefinedButton(
            self.mGeneralOptionsGroupBox)
        self.mXPositionDDBtn.setObjectName(_fromUtf8("mXPositionDDBtn"))
        self.gridLayout_3.addWidget(self.mXPositionDDBtn, 1, 3, 1, 1)
        self.mYPositionDDBtn = QgsDataDefinedButton(
            self.mGeneralOptionsGroupBox)
        self.mYPositionDDBtn.setObjectName(_fromUtf8("mYPositionDDBtn"))
        self.gridLayout_3.addWidget(self.mYPositionDDBtn, 2, 3, 1, 1)
        self.mWidthDDBtn = QgsDataDefinedButton(self.mGeneralOptionsGroupBox)
        self.mWidthDDBtn.setObjectName(_fromUtf8("mWidthDDBtn"))
        self.gridLayout_3.addWidget(self.mWidthDDBtn, 3, 3, 1, 1)
        self.mHeightDDBtn = QgsDataDefinedButton(self.mGeneralOptionsGroupBox)
        self.mHeightDDBtn.setObjectName(_fromUtf8("mHeightDDBtn"))
        self.gridLayout_3.addWidget(self.mHeightDDBtn, 4, 3, 1, 1)
        self.mPageSpinBox = QgsSpinBox(self.mGeneralOptionsGroupBox)
        self.mPageSpinBox.setMinimum(1)
        self.mPageSpinBox.setProperty("showClearButton", False)
        self.mPageSpinBox.setObjectName(_fromUtf8("mPageSpinBox"))
        self.gridLayout_3.addWidget(self.mPageSpinBox, 0, 1, 1, 3)
        self.mWidthSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mWidthSpin.setDecimals(3)
        self.mWidthSpin.setMaximum(9999999.0)
        self.mWidthSpin.setProperty("showClearButton", False)
        self.mWidthSpin.setObjectName(_fromUtf8("mWidthSpin"))
        self.gridLayout_3.addWidget(self.mWidthSpin, 3, 1, 1, 2)
        self.mHeightSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mHeightSpin.setDecimals(3)
        self.mHeightSpin.setMaximum(9999999.0)
        self.mHeightSpin.setProperty("showClearButton", False)
        self.mHeightSpin.setObjectName(_fromUtf8("mHeightSpin"))
        self.gridLayout_3.addWidget(self.mHeightSpin, 4, 1, 1, 2)
        self.mYPosSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mYPosSpin.setDecimals(3)
        self.mYPosSpin.setMinimum(-9999999.0)
        self.mYPosSpin.setMaximum(9999999.0)
        self.mYPosSpin.setProperty("showClearButton", False)
        self.mYPosSpin.setObjectName(_fromUtf8("mYPosSpin"))
        self.gridLayout_3.addWidget(self.mYPosSpin, 2, 1, 1, 2)
        self.mXPosSpin = QgsDoubleSpinBox(self.mGeneralOptionsGroupBox)
        self.mXPosSpin.setDecimals(3)
        self.mXPosSpin.setMinimum(-9999999.0)
        self.mXPosSpin.setMaximum(9999999.0)
        self.mXPosSpin.setProperty("showClearButton", False)
        self.mXPosSpin.setObjectName(_fromUtf8("mXPosSpin"))
        self.gridLayout_3.addWidget(self.mXPosSpin, 1, 1, 1, 2)
        self.gridLayout_3.setColumnStretch(1, 1)
        self.gridLayout_3.setColumnStretch(2, 1)
        self.gridLayout_3.setColumnStretch(3, 1)
        self.verticalLayout.addLayout(self.gridLayout_3)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.label_2 = QtGui.QLabel(self.mGeneralOptionsGroupBox)
        self.label_2.setAlignment(QtCore.Qt.AlignLeading | QtCore.Qt.AlignLeft
                                  | QtCore.Qt.AlignVCenter)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.horizontalLayout_7.addWidget(self.label_2)
        self.gridLayout = QtGui.QGridLayout()
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.mUpperMiddleCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mUpperMiddleCheckBox.sizePolicy().hasHeightForWidth())
        self.mUpperMiddleCheckBox.setSizePolicy(sizePolicy)
        self.mUpperMiddleCheckBox.setText(_fromUtf8(""))
        self.mUpperMiddleCheckBox.setObjectName(
            _fromUtf8("mUpperMiddleCheckBox"))
        self.gridLayout.addWidget(self.mUpperMiddleCheckBox, 0, 1, 1, 1)
        self.mMiddleRightCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMiddleRightCheckBox.sizePolicy().hasHeightForWidth())
        self.mMiddleRightCheckBox.setSizePolicy(sizePolicy)
        self.mMiddleRightCheckBox.setText(_fromUtf8(""))
        self.mMiddleRightCheckBox.setObjectName(
            _fromUtf8("mMiddleRightCheckBox"))
        self.gridLayout.addWidget(self.mMiddleRightCheckBox, 1, 2, 1, 1)
        self.mMiddleCheckBox = QtGui.QCheckBox(self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMiddleCheckBox.sizePolicy().hasHeightForWidth())
        self.mMiddleCheckBox.setSizePolicy(sizePolicy)
        self.mMiddleCheckBox.setText(_fromUtf8(""))
        self.mMiddleCheckBox.setObjectName(_fromUtf8("mMiddleCheckBox"))
        self.gridLayout.addWidget(self.mMiddleCheckBox, 1, 1, 1, 1)
        self.mUpperRightCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mUpperRightCheckBox.sizePolicy().hasHeightForWidth())
        self.mUpperRightCheckBox.setSizePolicy(sizePolicy)
        self.mUpperRightCheckBox.setText(_fromUtf8(""))
        self.mUpperRightCheckBox.setObjectName(
            _fromUtf8("mUpperRightCheckBox"))
        self.gridLayout.addWidget(self.mUpperRightCheckBox, 0, 2, 1, 1)
        self.mLowerMiddleCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mLowerMiddleCheckBox.sizePolicy().hasHeightForWidth())
        self.mLowerMiddleCheckBox.setSizePolicy(sizePolicy)
        self.mLowerMiddleCheckBox.setText(_fromUtf8(""))
        self.mLowerMiddleCheckBox.setObjectName(
            _fromUtf8("mLowerMiddleCheckBox"))
        self.gridLayout.addWidget(self.mLowerMiddleCheckBox, 2, 1, 1, 1)
        self.mLowerRightCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mLowerRightCheckBox.sizePolicy().hasHeightForWidth())
        self.mLowerRightCheckBox.setSizePolicy(sizePolicy)
        self.mLowerRightCheckBox.setText(_fromUtf8(""))
        self.mLowerRightCheckBox.setObjectName(
            _fromUtf8("mLowerRightCheckBox"))
        self.gridLayout.addWidget(self.mLowerRightCheckBox, 2, 2, 1, 1)
        self.mUpperLeftCheckBox = QtGui.QCheckBox(self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mUpperLeftCheckBox.sizePolicy().hasHeightForWidth())
        self.mUpperLeftCheckBox.setSizePolicy(sizePolicy)
        self.mUpperLeftCheckBox.setText(_fromUtf8(""))
        self.mUpperLeftCheckBox.setObjectName(_fromUtf8("mUpperLeftCheckBox"))
        self.gridLayout.addWidget(self.mUpperLeftCheckBox, 0, 0, 1, 1)
        self.mLowerLeftCheckBox = QtGui.QCheckBox(self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mLowerLeftCheckBox.sizePolicy().hasHeightForWidth())
        self.mLowerLeftCheckBox.setSizePolicy(sizePolicy)
        self.mLowerLeftCheckBox.setText(_fromUtf8(""))
        self.mLowerLeftCheckBox.setObjectName(_fromUtf8("mLowerLeftCheckBox"))
        self.gridLayout.addWidget(self.mLowerLeftCheckBox, 2, 0, 1, 1)
        self.mMiddleLeftCheckBox = QtGui.QCheckBox(
            self.mGeneralOptionsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMiddleLeftCheckBox.sizePolicy().hasHeightForWidth())
        self.mMiddleLeftCheckBox.setSizePolicy(sizePolicy)
        self.mMiddleLeftCheckBox.setText(_fromUtf8(""))
        self.mMiddleLeftCheckBox.setObjectName(
            _fromUtf8("mMiddleLeftCheckBox"))
        self.gridLayout.addWidget(self.mMiddleLeftCheckBox, 1, 0, 1, 1)
        self.horizontalLayout_7.addLayout(self.gridLayout)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_7.addItem(spacerItem)
        self.verticalLayout.addLayout(self.horizontalLayout_7)
        self.verticalLayout_2.addWidget(self.mGeneralOptionsGroupBox)
        self.mTransformsGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mTransformsGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mTransformsGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mTransformsGroupBox.setProperty("collapsed", True)
        self.mTransformsGroupBox.setObjectName(
            _fromUtf8("mTransformsGroupBox"))
        self.gridLayout_5 = QtGui.QGridLayout(self.mTransformsGroupBox)
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.label = QtGui.QLabel(self.mTransformsGroupBox)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout_5.addWidget(self.label, 0, 0, 1, 1)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.mItemRotationSpinBox = QgsDoubleSpinBox(self.mTransformsGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mItemRotationSpinBox.sizePolicy().hasHeightForWidth())
        self.mItemRotationSpinBox.setSizePolicy(sizePolicy)
        self.mItemRotationSpinBox.setMaximum(360.0)
        self.mItemRotationSpinBox.setObjectName(
            _fromUtf8("mItemRotationSpinBox"))
        self.horizontalLayout_4.addWidget(self.mItemRotationSpinBox)
        self.mItemRotationDDBtn = QgsDataDefinedButton(
            self.mTransformsGroupBox)
        self.mItemRotationDDBtn.setObjectName(_fromUtf8("mItemRotationDDBtn"))
        self.horizontalLayout_4.addWidget(self.mItemRotationDDBtn)
        self.gridLayout_5.addLayout(self.horizontalLayout_4, 0, 1, 1, 1)
        self.gridLayout_5.setColumnStretch(1, 1)
        self.verticalLayout_2.addWidget(self.mTransformsGroupBox)
        self.mFrameGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mFrameGroupBox.setCheckable(True)
        self.mFrameGroupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.mFrameGroupBox.setProperty("collapsed", True)
        self.mFrameGroupBox.setObjectName(_fromUtf8("mFrameGroupBox"))
        self.gridLayout_6 = QtGui.QGridLayout(self.mFrameGroupBox)
        self.gridLayout_6.setObjectName(_fromUtf8("gridLayout_6"))
        self.label_3 = QtGui.QLabel(self.mFrameGroupBox)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout_6.addWidget(self.label_3, 0, 0, 1, 1)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.mFrameColorButton = QgsColorButtonV2(self.mFrameGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mFrameColorButton.sizePolicy().hasHeightForWidth())
        self.mFrameColorButton.setSizePolicy(sizePolicy)
        self.mFrameColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mFrameColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mFrameColorButton.setText(_fromUtf8(""))
        self.mFrameColorButton.setObjectName(_fromUtf8("mFrameColorButton"))
        self.horizontalLayout_6.addWidget(self.mFrameColorButton)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem1)
        self.gridLayout_6.addLayout(self.horizontalLayout_6, 0, 1, 1, 1)
        self.mOutlineWidthLabel = QtGui.QLabel(self.mFrameGroupBox)
        self.mOutlineWidthLabel.setWordWrap(True)
        self.mOutlineWidthLabel.setObjectName(_fromUtf8("mOutlineWidthLabel"))
        self.gridLayout_6.addWidget(self.mOutlineWidthLabel, 1, 0, 1, 1)
        self.mOutlineWidthSpinBox = QgsDoubleSpinBox(self.mFrameGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mOutlineWidthSpinBox.sizePolicy().hasHeightForWidth())
        self.mOutlineWidthSpinBox.setSizePolicy(sizePolicy)
        self.mOutlineWidthSpinBox.setSingleStep(0.1)
        self.mOutlineWidthSpinBox.setProperty("showClearButton", False)
        self.mOutlineWidthSpinBox.setObjectName(
            _fromUtf8("mOutlineWidthSpinBox"))
        self.gridLayout_6.addWidget(self.mOutlineWidthSpinBox, 1, 1, 1, 1)
        self.label_8 = QtGui.QLabel(self.mFrameGroupBox)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.gridLayout_6.addWidget(self.label_8, 2, 0, 1, 1)
        self.mFrameJoinStyleCombo = QgsPenJoinStyleComboBox(
            self.mFrameGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mFrameJoinStyleCombo.sizePolicy().hasHeightForWidth())
        self.mFrameJoinStyleCombo.setSizePolicy(sizePolicy)
        self.mFrameJoinStyleCombo.setObjectName(
            _fromUtf8("mFrameJoinStyleCombo"))
        self.gridLayout_6.addWidget(self.mFrameJoinStyleCombo, 2, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.mFrameGroupBox)
        self.mBackgroundGroupBox = QgsCollapsibleGroupBoxBasic(self)
        self.mBackgroundGroupBox.setCheckable(True)
        self.mBackgroundGroupBox.setChecked(True)
        self.mBackgroundGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mBackgroundGroupBox.setProperty("collapsed", True)
        self.mBackgroundGroupBox.setObjectName(
            _fromUtf8("mBackgroundGroupBox"))
        self.gridLayout_7 = QtGui.QGridLayout(self.mBackgroundGroupBox)
        self.gridLayout_7.setObjectName(_fromUtf8("gridLayout_7"))
        self.label_4 = QtGui.QLabel(self.mBackgroundGroupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout_7.addWidget(self.label_4, 0, 0, 1, 1)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.mBackgroundColorButton = QgsColorButtonV2(
            self.mBackgroundGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mBackgroundColorButton.sizePolicy().hasHeightForWidth())
        self.mBackgroundColorButton.setSizePolicy(sizePolicy)
        self.mBackgroundColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mBackgroundColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mBackgroundColorButton.setText(_fromUtf8(""))
        self.mBackgroundColorButton.setObjectName(
            _fromUtf8("mBackgroundColorButton"))
        self.horizontalLayout_5.addWidget(self.mBackgroundColorButton)
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_5.addItem(spacerItem2)
        self.gridLayout_7.addLayout(self.horizontalLayout_5, 0, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.mBackgroundGroupBox)
        self.groupBox = QgsCollapsibleGroupBoxBasic(self)
        self.groupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.groupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.groupBox.setProperty("collapsed", True)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.gridLayout_8 = QtGui.QGridLayout(self.groupBox)
        self.gridLayout_8.setObjectName(_fromUtf8("gridLayout_8"))
        self.mItemIdLabel = QtGui.QLabel(self.groupBox)
        self.mItemIdLabel.setObjectName(_fromUtf8("mItemIdLabel"))
        self.gridLayout_8.addWidget(self.mItemIdLabel, 0, 0, 1, 1)
        self.mItemIdLineEdit = QtGui.QLineEdit(self.groupBox)
        self.mItemIdLineEdit.setObjectName(_fromUtf8("mItemIdLineEdit"))
        self.gridLayout_8.addWidget(self.mItemIdLineEdit, 0, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.groupBox)
        self.groupRendering = QgsCollapsibleGroupBoxBasic(self)
        self.groupRendering.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.groupRendering.setProperty("collapsed", True)
        self.groupRendering.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.groupRendering.setObjectName(_fromUtf8("groupRendering"))
        self.gridLayout_4 = QtGui.QGridLayout(self.groupRendering)
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.labelBlendMode = QtGui.QLabel(self.groupRendering)
        self.labelBlendMode.setObjectName(_fromUtf8("labelBlendMode"))
        self.gridLayout_4.addWidget(self.labelBlendMode, 0, 0, 1, 1)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.mBlendModeCombo = QgsBlendModeComboBox(self.groupRendering)
        self.mBlendModeCombo.setObjectName(_fromUtf8("mBlendModeCombo"))
        self.horizontalLayout_3.addWidget(self.mBlendModeCombo)
        self.mBlendModeDDBtn = QgsDataDefinedButton(self.groupRendering)
        self.mBlendModeDDBtn.setObjectName(_fromUtf8("mBlendModeDDBtn"))
        self.horizontalLayout_3.addWidget(self.mBlendModeDDBtn)
        self.gridLayout_4.addLayout(self.horizontalLayout_3, 0, 1, 1, 1)
        self.labelTransparency = QtGui.QLabel(self.groupRendering)
        self.labelTransparency.setObjectName(_fromUtf8("labelTransparency"))
        self.gridLayout_4.addWidget(self.labelTransparency, 1, 0, 1, 1)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.mTransparencySlider = QtGui.QSlider(self.groupRendering)
        self.mTransparencySlider.setMaximum(100)
        self.mTransparencySlider.setOrientation(QtCore.Qt.Horizontal)
        self.mTransparencySlider.setObjectName(
            _fromUtf8("mTransparencySlider"))
        self.horizontalLayout_2.addWidget(self.mTransparencySlider)
        self.mTransparencySpnBx = QgsSpinBox(self.groupRendering)
        self.mTransparencySpnBx.setMinimumSize(QtCore.QSize(80, 25))
        self.mTransparencySpnBx.setMaximum(100)
        self.mTransparencySpnBx.setObjectName(_fromUtf8("mTransparencySpnBx"))
        self.horizontalLayout_2.addWidget(self.mTransparencySpnBx)
        self.mTransparencyDDBtn = QgsDataDefinedButton(self.groupRendering)
        self.mTransparencyDDBtn.setObjectName(_fromUtf8("mTransparencyDDBtn"))
        self.horizontalLayout_2.addWidget(self.mTransparencyDDBtn)
        self.gridLayout_4.addLayout(self.horizontalLayout_2, 1, 1, 1, 1)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.mExcludeFromPrintsCheckBox = QtGui.QCheckBox(self.groupRendering)
        self.mExcludeFromPrintsCheckBox.setObjectName(
            _fromUtf8("mExcludeFromPrintsCheckBox"))
        self.horizontalLayout.addWidget(self.mExcludeFromPrintsCheckBox)
        self.mExcludePrintsDDBtn = QgsDataDefinedButton(self.groupRendering)
        self.mExcludePrintsDDBtn.setObjectName(
            _fromUtf8("mExcludePrintsDDBtn"))
        self.horizontalLayout.addWidget(self.mExcludePrintsDDBtn)
        self.gridLayout_4.addLayout(self.horizontalLayout, 2, 0, 1, 2)
        self.verticalLayout_2.addWidget(self.groupRendering)
        self.groupBox_3 = QgsCollapsibleGroupBox(self)
        self.groupBox_3.setObjectName(_fromUtf8("groupBox_3"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.groupBox_3)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.mVariableEditor = QgsVariableEditorWidget(self.groupBox_3)
        self.mVariableEditor.setMinimumSize(QtCore.QSize(0, 200))
        self.mVariableEditor.setObjectName(_fromUtf8("mVariableEditor"))
        self.verticalLayout_4.addWidget(self.mVariableEditor)
        self.verticalLayout_2.addWidget(self.groupBox_3)
        spacerItem3 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                        QtGui.QSizePolicy.MinimumExpanding)
        self.verticalLayout_2.addItem(spacerItem3)
        self.mOutlineWidthLabel.setBuddy(self.mOutlineWidthSpinBox)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.mGeneralOptionsGroupBox, self.mPageSpinBox)
        self.setTabOrder(self.mPageSpinBox, self.mXPosSpin)
        self.setTabOrder(self.mXPosSpin, self.mXPositionDDBtn)
        self.setTabOrder(self.mXPositionDDBtn, self.mYPosSpin)
        self.setTabOrder(self.mYPosSpin, self.mYPositionDDBtn)
        self.setTabOrder(self.mYPositionDDBtn, self.mWidthSpin)
        self.setTabOrder(self.mWidthSpin, self.mWidthDDBtn)
        self.setTabOrder(self.mWidthDDBtn, self.mHeightSpin)
        self.setTabOrder(self.mHeightSpin, self.mHeightDDBtn)
        self.setTabOrder(self.mHeightDDBtn, self.mUpperLeftCheckBox)
        self.setTabOrder(self.mUpperLeftCheckBox, self.mUpperMiddleCheckBox)
        self.setTabOrder(self.mUpperMiddleCheckBox, self.mUpperRightCheckBox)
        self.setTabOrder(self.mUpperRightCheckBox, self.mMiddleLeftCheckBox)
        self.setTabOrder(self.mMiddleLeftCheckBox, self.mMiddleCheckBox)
        self.setTabOrder(self.mMiddleCheckBox, self.mMiddleRightCheckBox)
        self.setTabOrder(self.mMiddleRightCheckBox, self.mLowerLeftCheckBox)
        self.setTabOrder(self.mLowerLeftCheckBox, self.mLowerMiddleCheckBox)
        self.setTabOrder(self.mLowerMiddleCheckBox, self.mLowerRightCheckBox)
        self.setTabOrder(self.mLowerRightCheckBox, self.mTransformsGroupBox)
        self.setTabOrder(self.mTransformsGroupBox, self.mItemRotationSpinBox)
        self.setTabOrder(self.mItemRotationSpinBox, self.mItemRotationDDBtn)
        self.setTabOrder(self.mItemRotationDDBtn, self.mFrameGroupBox)
        self.setTabOrder(self.mFrameGroupBox, self.mFrameColorButton)
        self.setTabOrder(self.mFrameColorButton, self.mOutlineWidthSpinBox)
        self.setTabOrder(self.mOutlineWidthSpinBox, self.mFrameJoinStyleCombo)
        self.setTabOrder(self.mFrameJoinStyleCombo, self.mBackgroundGroupBox)
        self.setTabOrder(self.mBackgroundGroupBox, self.mBackgroundColorButton)
        self.setTabOrder(self.mBackgroundColorButton, self.groupBox)
        self.setTabOrder(self.groupBox, self.mItemIdLineEdit)
        self.setTabOrder(self.mItemIdLineEdit, self.groupRendering)
        self.setTabOrder(self.groupRendering, self.mBlendModeCombo)
        self.setTabOrder(self.mBlendModeCombo, self.mBlendModeDDBtn)
        self.setTabOrder(self.mBlendModeDDBtn, self.mTransparencySlider)
        self.setTabOrder(self.mTransparencySlider, self.mTransparencySpnBx)
        self.setTabOrder(self.mTransparencySpnBx, self.mTransparencyDDBtn)
        self.setTabOrder(self.mTransparencyDDBtn,
                         self.mExcludeFromPrintsCheckBox)
        self.setTabOrder(self.mExcludeFromPrintsCheckBox,
                         self.mExcludePrintsDDBtn)
        # self.mComposerObject = None
        self.groupBox_3.setVisible(False)

    def retranslateUi(self):
        self.setWindowTitle(
            _translate("QgsComposerItemWidgetBase", "Global Options", None))
        self.mGeneralOptionsGroupBox.setTitle(
            _translate("QgsComposerItemWidgetBase", "Position and size", None))
        self.mWidthLabel.setText(
            _translate("QgsComposerItemWidgetBase", "Width", None))
        self.mXLabel.setText(_translate("QgsComposerItemWidgetBase", "X",
                                        None))
        self.mHeightLabel.setText(
            _translate("QgsComposerItemWidgetBase", "Height", None))
        self.mYLabel.setText(_translate("QgsComposerItemWidgetBase", "Y",
                                        None))
        self.mPageLabel.setText(
            _translate("QgsComposerItemWidgetBase", "Page", None))
        self.mXPositionDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.mYPositionDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.mWidthDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.mHeightDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.mWidthSpin.setSuffix(
            _translate("QgsComposerItemWidgetBase", " mm", None))
        self.mHeightSpin.setSuffix(
            _translate("QgsComposerItemWidgetBase", " mm", None))
        self.mYPosSpin.setSuffix(
            _translate("QgsComposerItemWidgetBase", " mm", None))
        self.mXPosSpin.setSuffix(
            _translate("QgsComposerItemWidgetBase", " mm", None))
        self.label_2.setText(
            _translate("QgsComposerItemWidgetBase", "Reference point", None))
        self.mTransformsGroupBox.setTitle(
            _translate("QgsComposerItemWidgetBase", "Rotation", None))
        self.label.setText(
            _translate("QgsComposerItemWidgetBase", "Rotation", None))
        self.mItemRotationSpinBox.setSuffix(
            _translate("QgsComposerItemWidgetBase", " °", None))
        self.mItemRotationDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.mFrameGroupBox.setTitle(
            _translate("QgsComposerItemWidgetBase", "Frame", None))
        self.label_3.setText(
            _translate("QgsComposerItemWidgetBase", "Frame color", None))
        self.mOutlineWidthLabel.setText(
            _translate("QgsComposerItemWidgetBase", "Thickness", None))
        self.mOutlineWidthSpinBox.setSuffix(
            _translate("QgsComposerItemWidgetBase", " mm", None))
        self.label_8.setText(
            _translate("QgsComposerItemWidgetBase", "Join style", None))
        self.mBackgroundGroupBox.setTitle(
            _translate("QgsComposerItemWidgetBase", "Background", None))
        self.label_4.setText(
            _translate("QgsComposerItemWidgetBase", "Background color", None))
        self.groupBox.setTitle(
            _translate("QgsComposerItemWidgetBase", "Item ID", None))
        self.mItemIdLabel.setText(
            _translate("QgsComposerItemWidgetBase", "Id", None))
        self.groupRendering.setTitle(
            _translate("QgsComposerItemWidgetBase", "Rendering", None))
        self.labelBlendMode.setText(
            _translate("QgsComposerItemWidgetBase", "Blending mode", None))
        self.mBlendModeDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.labelTransparency.setText(
            _translate("QgsComposerItemWidgetBase", "Transparency", None))
        self.mTransparencyDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.mExcludeFromPrintsCheckBox.setText(
            _translate("QgsComposerItemWidgetBase",
                       "Exclude item from exports", None))
        self.mExcludePrintsDDBtn.setText(
            _translate("QgsComposerItemWidgetBase", "...", None))
        self.groupBox_3.setTitle(
            _translate("QgsComposerItemWidgetBase", "Variables", None))

    def ddPropertyForWidget(self, widget):
        # Q_UNUSED( widget );

        # //base implementation, return no property
        return QgsComposerObject.NoProperty

    def updateDataDefinedProperty(self):
        #match data defined button to item's data defined property

        ddButton = self.sender()
        ddButton._class_ = QgsDataDefinedButton
        if (not isinstance(ddButton, QgsDataDefinedButton)):
            return
        property = self.ddPropertyForWidget(ddButton)
        if (property == QgsComposerObject.NoProperty):
            return

        #set the data defined property and refresh the item
        self.setDataDefinedProperty(ddButton, property)
        self.mComposerObject.refreshDataDefinedProperty(property)

    def setDataDefinedProperty(self, ddBtn, p):
        if (not self.mComposerObject):
            return

        map = ddBtn.definedProperty()
        self.mComposerObject.setDataDefinedProperty(
            p,
            map.value("active").toInt(),
            map.value("useexpr").toInt(), map.value("expression"),
            map.value("field"))

    def atlasComposition(self):
        if (not self.mComposerObject):
            return None
        composition = self.mComposerObject.composition()

        if (not composition):
            return None

        return composition.atlasComposition()

    def atlasCoverageLayer(self):
        atlasMap = self.atlasComposition()

        if (atlasMap and atlasMap.enabled()):
            return atlasMap.coverageLayer()

        return None
    def setupUi(self, QgsSvgExportOptionsDialog):
        QgsSvgExportOptionsDialog.setObjectName(
            _fromUtf8("QgsSvgExportOptionsDialog"))
        QgsSvgExportOptionsDialog.resize(489, 282)
        self.verticalLayout = QtGui.QVBoxLayout(QgsSvgExportOptionsDialog)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.groupBox = QgsCollapsibleGroupBoxBasic(QgsSvgExportOptionsDialog)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.chkMapLayersAsGroup = QtGui.QCheckBox(self.groupBox)
        self.chkMapLayersAsGroup.setChecked(False)
        self.chkMapLayersAsGroup.setObjectName(
            _fromUtf8("chkMapLayersAsGroup"))
        self.verticalLayout_2.addWidget(self.chkMapLayersAsGroup)
        self.chkTextAsOutline = QtGui.QCheckBox(self.groupBox)
        self.chkTextAsOutline.setEnabled(True)
        self.chkTextAsOutline.setChecked(True)
        self.chkTextAsOutline.setObjectName(_fromUtf8("chkTextAsOutline"))
        self.verticalLayout_2.addWidget(self.chkTextAsOutline)
        self.verticalLayout.addWidget(self.groupBox)
        self.mClipToContentGroupBox = QgsCollapsibleGroupBoxBasic(
            QgsSvgExportOptionsDialog)
        self.mClipToContentGroupBox.setCheckable(True)
        self.mClipToContentGroupBox.setChecked(False)
        self.mClipToContentGroupBox.setObjectName(
            _fromUtf8("mClipToContentGroupBox"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.mClipToContentGroupBox)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.gridLayout_5 = QtGui.QGridLayout()
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.mTopMarginSpinBox = QgsDoubleSpinBox(self.mClipToContentGroupBox)
        self.mTopMarginSpinBox.setSingleStep(0.1)
        self.mTopMarginSpinBox.setObjectName(_fromUtf8("mTopMarginSpinBox"))
        self.gridLayout_5.addWidget(self.mTopMarginSpinBox, 0, 2, 1, 1)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.label_5 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.horizontalLayout_7.addWidget(self.label_5)
        self.mLeftMarginSpinBox = QgsDoubleSpinBox(self.mClipToContentGroupBox)
        self.mLeftMarginSpinBox.setSingleStep(0.1)
        self.mLeftMarginSpinBox.setObjectName(_fromUtf8("mLeftMarginSpinBox"))
        self.horizontalLayout_7.addWidget(self.mLeftMarginSpinBox)
        self.label_11 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.horizontalLayout_7.addWidget(self.label_11)
        self.mRightMarginSpinBox = QgsDoubleSpinBox(
            self.mClipToContentGroupBox)
        self.mRightMarginSpinBox.setSingleStep(0.1)
        self.mRightMarginSpinBox.setObjectName(
            _fromUtf8("mRightMarginSpinBox"))
        self.horizontalLayout_7.addWidget(self.mRightMarginSpinBox)
        self.gridLayout_5.addLayout(self.horizontalLayout_7, 1, 0, 1, 4)
        self.label_12 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.gridLayout_5.addWidget(self.label_12, 2, 1, 1, 1)
        self.mBottomMarginSpinBox = QgsDoubleSpinBox(
            self.mClipToContentGroupBox)
        self.mBottomMarginSpinBox.setSingleStep(0.1)
        self.mBottomMarginSpinBox.setObjectName(
            _fromUtf8("mBottomMarginSpinBox"))
        self.gridLayout_5.addWidget(self.mBottomMarginSpinBox, 2, 2, 1, 1)
        self.label_4 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout_5.addWidget(self.label_4, 0, 1, 1, 1)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem, 0, 3, 1, 1)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem1, 0, 0, 1, 1)
        self.verticalLayout_5.addLayout(self.gridLayout_5)
        self.verticalLayout.addWidget(self.mClipToContentGroupBox)
        spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                        QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem2)
        self.buttonBox = QtGui.QDialogButtonBox(QgsSvgExportOptionsDialog)
        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel
                                          | QtGui.QDialogButtonBox.Save)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.verticalLayout.addWidget(self.buttonBox)

        self.retranslateUi(QgsSvgExportOptionsDialog)
        QtCore.QObject.connect(self.buttonBox,
                               QtCore.SIGNAL(_fromUtf8("accepted()")),
                               QgsSvgExportOptionsDialog.accept)
        QtCore.QObject.connect(self.buttonBox,
                               QtCore.SIGNAL(_fromUtf8("rejected()")),
                               QgsSvgExportOptionsDialog.reject)
        QtCore.QMetaObject.connectSlotsByName(QgsSvgExportOptionsDialog)
        QgsSvgExportOptionsDialog.setTabOrder(self.chkMapLayersAsGroup,
                                              self.chkTextAsOutline)
        QgsSvgExportOptionsDialog.setTabOrder(self.chkTextAsOutline,
                                              self.mClipToContentGroupBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mClipToContentGroupBox,
                                              self.mTopMarginSpinBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mTopMarginSpinBox,
                                              self.mLeftMarginSpinBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mLeftMarginSpinBox,
                                              self.mRightMarginSpinBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mRightMarginSpinBox,
                                              self.mBottomMarginSpinBox)
Esempio n. 8
0
class Serval(object):

    LINE_SELECTION = "line"
    POLYGON_SELECTION = "polygon"
    RGB = "RGB"
    SINGLE_BAND = "Single band"

    def __init__(self, iface):
        self.iface = iface
        self.canvas = self.iface.mapCanvas()
        self.plugin_dir = os.path.dirname(__file__)
        self.uc = UserCommunication(iface, 'Serval')
        self.load_settings()
        self.raster = None
        self.handler = None
        self.spin_boxes = None
        self.exp_dlg = None
        self.exp_builder = None
        self.block_pts_layer = None
        self.px, self.py = [0, 0]
        self.last_point = QgsPointXY(0, 0)
        self.rbounds = None
        self.changes = dict()  # dict with rasters changes {raster_id: RasterChanges instance}
        self.project = QgsProject.instance()
        self.crs_transform = None
        self.all_touched = None
        self.selection_mode = None
        self.spatial_index_time = dict()  # {layer_id: creation time}
        self.spatial_index = dict()  # {layer_id: spatial index}
        self.selection_layers_count = 1
        self.debug = DEBUG
        self.logger = get_logger() if self.debug else None

        self.menu = u'Serval'
        self.actions = []
        self.actions_always_on = []
        self.toolbar = self.iface.addToolBar(u'Serval Main Toolbar')
        self.toolbar.setObjectName(u'Serval Main Toolbar')
        self.toolbar.setToolTip(u'Serval Main Toolbar')

        self.sel_toolbar = self.iface.addToolBar(u'Serval Selection Toolbar')
        self.sel_toolbar.setObjectName(u'Serval Selection Toolbar')
        self.sel_toolbar.setToolTip(u'Serval Selection Toolbar')

        # Map tools
        self.probe_tool = QgsMapToolEmitPoint(self.canvas)
        self.probe_tool.setObjectName('ServalProbeTool')
        self.probe_tool.setCursor(QCursor(QPixmap(icon_path('probe_tool.svg')), hotX=2, hotY=22))
        self.probe_tool.canvasClicked.connect(self.point_clicked)
        self.draw_tool = QgsMapToolEmitPoint(self.canvas)
        self.draw_tool.setObjectName('ServalDrawTool')
        self.draw_tool.setCursor(QCursor(QPixmap(icon_path('draw_tool.svg')), hotX=2, hotY=22))
        self.draw_tool.canvasClicked.connect(self.point_clicked)
        self.selection_tool = RasterCellSelectionMapTool(self.iface, self.uc, self.raster, debug=self.debug)
        self.selection_tool.setObjectName('RasterSelectionTool')
        self.map_tool_btn = dict()  # {map tool: button activating the tool}

        self.iface.currentLayerChanged.connect(self.set_active_raster)
        self.project.layersAdded.connect(self.set_active_raster)
        self.canvas.mapToolSet.connect(self.check_active_tool)

        self.register_exp_functions()

    def load_settings(self):
        """Return plugin settings dict - default values are overriden by user prefered values from QSettings."""
        self.default_settings = {
            "undo_steps": {"value": 3, "vtype": int},
        }
        self.settings = dict()
        s = QSettings()
        s.beginGroup("serval")
        for k, v in self.default_settings.items():
            user_val = s.value(k, v["value"], v["vtype"])
            self.settings[k] = user_val

    def edit_settings(self):
        """Open dialog with plugin settings."""
        s = QSettings()
        s.beginGroup("serval")
        k = "undo_steps"
        cur_val = self.settings[k]
        val_type = self.default_settings[k]["vtype"]
        cur_steps = s.value(k, cur_val, val_type)

        label = 'Nr of Undo/Redo steps:'
        steps, ok = QInputDialog.getInt(None, "Serval Settings", label, cur_steps)
        if not ok:
            return
        if steps >= 0:
            s.setValue("undo_steps", steps)
        self.load_settings()
        self.uc.show_info("Some new settings may require QGIS restart.")

    def initGui(self):
        _ = self.add_action(
            'serval_icon.svg',
            text=u'Show Serval Toolbars',
            add_to_menu=True,
            callback=self.show_toolbar,
            always_on=True, )

        _ = self.add_action(
            'serval_icon.svg',
            text=u'Hide Serval Toolbars',
            add_to_menu=True,
            callback=self.hide_toolbar,
            always_on=True, )

        self.probe_btn = self.add_action(
            'probe.svg',
            text="Probe raster",
            callback=self.activate_probing,
            add_to_toolbar=self.toolbar,
            checkable=True, )
        self.map_tool_btn[self.probe_tool] = self.probe_btn

        self.color_btn = QgsColorButton()
        self.color_btn.setColor(Qt.gray)
        self.color_btn.setMinimumSize(QSize(40, 24))
        self.color_btn.setMaximumSize(QSize(40, 24))
        self.toolbar.addWidget(self.color_btn)
        self.color_picker_connection(connect=True)
        self.color_btn.setDisabled(True)

        self.toolbar.addWidget(QLabel("Band:"))
        self.bands_cbo = QComboBox()
        self.bands_cbo.addItem("1", 1)
        self.toolbar.addWidget(self.bands_cbo)
        self.bands_cbo.currentIndexChanged.connect(self.update_active_bands)
        self.bands_cbo.setDisabled(True)

        self.spin_boxes = BandBoxes()
        self.toolbar.addWidget(self.spin_boxes)
        self.spin_boxes.enter_hit.connect(self.apply_spin_box_values)

        self.draw_btn = self.add_action(
            'draw.svg',
            text="Apply Value(s) To Single Cell",
            callback=self.activate_drawing,
            add_to_toolbar=self.toolbar,
            checkable=True, )
        self.map_tool_btn[self.draw_tool] = self.draw_btn

        self.apply_spin_box_values_btn = self.add_action(
            'apply_const_value.svg',
            text="Apply Value(s) to Selection",
            callback=self.apply_spin_box_values,
            add_to_toolbar=self.toolbar, )

        self.gom_btn = self.add_action(
            'apply_nodata_value.svg',
            text="Apply NoData to Selection",
            callback=self.apply_nodata_value,
            add_to_toolbar=self.toolbar, )

        self.exp_dlg_btn = self.add_action(
            'apply_expression_value.svg',
            text="Apply Expression Value To Selection",
            callback=self.define_expression,
            add_to_toolbar=self.toolbar,
            checkable=False, )

        self.low_pass_filter_btn = self.add_action(
            'apply_low_pass_filter.svg',
            text="Apply Low-Pass 3x3 Filter To Selection",
            callback=self.apply_low_pass_filter,
            add_to_toolbar=self.toolbar,
            checkable=False, )

        self.undo_btn = self.add_action(
            'undo.svg',
            text="Undo",
            callback=self.undo,
            add_to_toolbar=self.toolbar, )

        self.redo_btn = self.add_action(
            'redo.svg',
            text="Redo",
            callback=self.redo,
            add_to_toolbar=self.toolbar, )

        self.set_nodata_btn = self.add_action(
            'set_nodata.svg',
            text="Edit Raster NoData Values",
            callback=self.set_nodata,
            add_to_toolbar=self.toolbar, )

        self.settings_btn = self.add_action(
            'edit_settings.svg',
            text="Serval Settings",
            callback=self.edit_settings,
            add_to_toolbar=self.toolbar,
            always_on=True, )

        self.show_help = self.add_action(
            'help.svg',
            text="Help",
            add_to_menu=True,
            callback=self.show_website,
            add_to_toolbar=self.toolbar,
            always_on=True, )

        # Selection Toolbar

        line_width_icon = QIcon(icon_path("line_width.svg"))
        line_width_lab = QLabel()
        line_width_lab.setPixmap(line_width_icon.pixmap(22, 12))
        self.sel_toolbar.addWidget(line_width_lab)

        self.line_width_sbox = QgsDoubleSpinBox()
        self.line_width_sbox.setMinimumSize(QSize(50, 24))
        self.line_width_sbox.setMaximumSize(QSize(50, 24))
        # self.line_width_sbox.setButtonSymbols(QAbstractSpinBox.NoButtons)
        self.line_width_sbox.setValue(1)
        self.line_width_sbox.setMinimum(0.01)
        self.line_width_sbox.setShowClearButton(False)
        self.line_width_sbox.setToolTip("Selection Line Width")
        self.line_width_sbox.valueChanged.connect(self.update_selection_tool)

        self.width_unit_cbo = QComboBox()
        self.width_units = ("map units", "pixel width", "pixel height", "hairline",)
        for u in self.width_units:
            self.width_unit_cbo.addItem(u)
        self.width_unit_cbo.setToolTip("Selection Line Width Unit")
        self.sel_toolbar.addWidget(self.line_width_sbox)
        self.sel_toolbar.addWidget(self.width_unit_cbo)
        self.width_unit_cbo.currentIndexChanged.connect(self.update_selection_tool)

        self.line_select_btn = self.add_action(
            'select_line.svg',
            text="Select Raster Cells by Line",
            callback=self.activate_line_selection,
            add_to_toolbar=self.sel_toolbar,
            checkable=True, )

        self.polygon_select_btn = self.add_action(
            'select_polygon.svg',
            text="Select Raster Cells by Polygon",
            callback=self.activate_polygon_selection,
            add_to_toolbar=self.sel_toolbar,
            checkable=True, )

        self.selection_from_layer_btn = self.add_action(
            'select_from_layer.svg',
            text="Create Selection From Layer",
            callback=self.selection_from_layer,
            add_to_toolbar=self.sel_toolbar, )

        self.selection_to_layer_btn = self.add_action(
            'selection_to_layer.svg',
            text="Create Memory Layer From Selection",
            callback=self.selection_to_layer,
            add_to_toolbar=self.sel_toolbar, )

        self.clear_selection_btn = self.add_action(
            'clear_selection.svg',
            text="Clear selection",
            callback=self.clear_selection,
            add_to_toolbar=self.sel_toolbar, )

        self.toggle_all_touched_btn = self.add_action(
            'all_touched.svg',
            text="Toggle All Touched Get Selected",
            callback=self.toggle_all_touched,
            checkable=True, checked=True,
            add_to_toolbar=self.sel_toolbar, )
        self.all_touched = True

        self.enable_toolbar_actions(enable=False)
        self.check_undo_redo_btns()

    def add_action(self, icon_name, callback=None, text="", enabled_flag=True, add_to_menu=False, add_to_toolbar=None,
                   status_tip=None, whats_this=None, checkable=False, checked=False, always_on=False):
            
        icon = QIcon(icon_path(icon_name))
        action = QAction(icon, text, self.iface.mainWindow())
        action.triggered.connect(callback)
        action.setEnabled(enabled_flag)
        action.setCheckable(checkable)
        action.setChecked(checked)

        if status_tip is not None:
            action.setStatusTip(status_tip)
        if whats_this is not None:
            action.setWhatsThis(whats_this)
        if add_to_toolbar is not None:
            add_to_toolbar.addAction(action)
        if add_to_menu:
            self.iface.addPluginToMenu(self.menu, action)

        self.actions.append(action)
        if always_on:
            self.actions_always_on.append(action)
        return action

    def unload(self):
        self.changes = None
        if self.selection_tool:
            self.selection_tool.reset()
        if self.spin_boxes is not None:
            self.spin_boxes.remove_spinboxes()
        for action in self.actions:
            self.iface.removePluginMenu('Serval', action)
            self.iface.removeToolBarIcon(action)
        del self.toolbar
        del self.sel_toolbar
        self.iface.actionPan().trigger()
        self.unregister_exp_functions()

    def show_toolbar(self):
        if self.toolbar:
            self.toolbar.show()
            self.sel_toolbar.show()

    def hide_toolbar(self):
        if self.toolbar:
            self.toolbar.hide()
            self.sel_toolbar.hide()

    @staticmethod
    def register_exp_functions():
        QgsExpression.registerFunction(nearest_feature_attr_value)
        QgsExpression.registerFunction(nearest_pt_on_line_interpolate_z)
        QgsExpression.registerFunction(intersecting_features_attr_average)
        QgsExpression.registerFunction(interpolate_from_mesh)

    @staticmethod
    def unregister_exp_functions():
        QgsExpression.unregisterFunction('nearest_feature_attr_value')
        QgsExpression.unregisterFunction('nearest_pt_on_line_interpolate_z')
        QgsExpression.unregisterFunction('intersecting_features_attr_average')
        QgsExpression.unregisterFunction('interpolate_from_mesh')

    def uncheck_all_btns(self):
        self.probe_btn.setChecked(False)
        self.draw_btn.setChecked(False)
        self.gom_btn.setChecked(False)
        self.line_select_btn.setChecked(False)
        self.polygon_select_btn.setChecked(False)

    def check_active_tool(self, cur_tool):
        self.uncheck_all_btns()
        if cur_tool in self.map_tool_btn:
            self.map_tool_btn[cur_tool].setChecked(True)
        if cur_tool == self.selection_tool:
            if self.selection_mode == self.LINE_SELECTION:
                self.line_select_btn.setChecked(True)
            else:
                self.polygon_select_btn.setChecked(True)

    def activate_probing(self):
        self.mode = 'probe'
        self.canvas.setMapTool(self.probe_tool)

    def define_expression(self):
        if not self.selection_tool.selected_geometries:
            self.uc.bar_warn("No selection for raster layer. Select some cells and retry...")
            return
        self.handler.select(self.selection_tool.selected_geometries, all_touched_cells=self.all_touched)
        self.handler.create_cell_pts_layer()
        if self.handler.cell_pts_layer.featureCount() == 0:
            self.uc.bar_warn("No selection for raster layer. Select some cells and retry...")
            return
        self.exp_dlg = QgsExpressionBuilderDialog(self.handler.cell_pts_layer)
        self.exp_builder = self.exp_dlg.expressionBuilder()
        self.exp_dlg.accepted.connect(self.apply_exp_value)
        self.exp_dlg.show()

    def apply_exp_value(self):
        if not self.exp_dlg.expressionText() or not self.exp_builder.isExpressionValid():
            return
        QApplication.setOverrideCursor(Qt.WaitCursor)
        exp = self.exp_dlg.expressionText()
        idx = self.handler.cell_pts_layer.addExpressionField(exp, QgsField('exp_val', QVariant.Double))
        self.handler.exp_field_idx = idx
        self.handler.write_block()
        QApplication.restoreOverrideCursor()
        self.raster.triggerRepaint()

    def activate_drawing(self):
        self.mode = 'draw'
        self.canvas.setMapTool(self.draw_tool)

    def get_cur_line_width(self):
        width_coef = {
            "map units": 1.,
            "pixel width": self.raster.rasterUnitsPerPixelX(),
            "pixel height": self.raster.rasterUnitsPerPixelY(),
            "hairline": 0.000001,
        }
        return self.line_width_sbox.value() * width_coef[self.width_unit_cbo.currentText()]

    def set_selection_tool(self, mode):
        if self.raster is None:
            self.uc.bar_warn("Select a raster layer")
            return
        self.selection_mode = mode
        self.selection_tool.init_tool(self.raster, mode=self.selection_mode, line_width=self.get_cur_line_width())
        self.selection_tool.set_prev_tool(self.canvas.mapTool())
        self.canvas.setMapTool(self.selection_tool)

    def activate_line_selection(self):
        self.set_selection_tool(self.LINE_SELECTION)

    def activate_polygon_selection(self):
        self.set_selection_tool(self.POLYGON_SELECTION)

    def update_selection_tool(self):
        """Reactivate the selection tool with updated line width and units."""
        if self.selection_mode == self.LINE_SELECTION:
            self.activate_line_selection()
        elif self.selection_mode == self.POLYGON_SELECTION:
            self.activate_polygon_selection()
        else:
            pass

    def apply_values(self, new_values):
        QApplication.setOverrideCursor(Qt.WaitCursor)
        self.handler.select(self.selection_tool.selected_geometries, all_touched_cells=self.all_touched)
        self.handler.write_block(new_values)
        QApplication.restoreOverrideCursor()
        self.raster.triggerRepaint()

    def apply_values_single_cell(self, new_vals):
        """Create single cell selection and apply the new values."""
        cp = self.last_point
        if self.logger:
            self.logger.debug(f"Changing single cell for pt {cp}")
        col, row = self.handler.point_to_index([cp.x(), cp.y()])
        px, py = self.handler.index_to_point(row, col, upper_left=False)
        d = 0.001
        bbox = QgsRectangle(px - d, py - d, px + d, py + d)
        if self.logger:
            self.logger.debug(f"Changing single cell in {bbox}")
        QApplication.setOverrideCursor(Qt.WaitCursor)
        self.handler.select([QgsGeometry.fromRect(bbox)], all_touched_cells=False, transform=False)
        self.handler.write_block(new_vals)
        QApplication.restoreOverrideCursor()
        self.raster.triggerRepaint()

    def apply_spin_box_values(self):
        if not self.selection_tool.selected_geometries:
            return
        self.apply_values(self.spin_boxes.get_values())

    def apply_nodata_value(self):
        if not self.selection_tool.selected_geometries:
            return
        self.apply_values(self.handler.nodata_values)

    def apply_low_pass_filter(self):
        QApplication.setOverrideCursor(Qt.WaitCursor)
        self.handler.select(self.selection_tool.selected_geometries, all_touched_cells=self.all_touched)
        self.handler.write_block(low_pass_filter=True)
        QApplication.restoreOverrideCursor()
        self.raster.triggerRepaint()

    def clear_selection(self):
        if self.selection_tool:
            self.selection_tool.clear_all_selections()

    def selection_from_layer(self):
        """Create a new selection from layer."""
        self.selection_tool.init_tool(self.raster, mode=self.POLYGON_SELECTION, line_width=self.get_cur_line_width())
        dlg = LayerSelectDialog()
        if not dlg.exec_():
            return
        cur_layer = dlg.cbo.currentLayer()
        if not cur_layer.type() == QgsMapLayerType.VectorLayer:
            return
        self.selection_tool.selection_from_layer(cur_layer)

    def selection_to_layer(self):
        """Create a memory layer from current selection"""
        geoms = self.selection_tool.selected_geometries
        if geoms is None or not self.raster:
            return
        crs_str = self.raster.crs().toProj()
        nr = self.selection_layers_count
        self.selection_layers_count += 1
        mlayer = QgsVectorLayer(f"Polygon?crs={crs_str}&field=fid:int", f"Raster selection {nr}", "memory")
        fields = mlayer.dataProvider().fields()
        features = []
        for i, geom in enumerate(geoms):
            feat = QgsFeature(fields)
            feat["fid"] = i + 1
            feat.setGeometry(geom)
            features.append(feat)
        mlayer.dataProvider().addFeatures(features)
        self.project.addMapLayer(mlayer)

    def toggle_all_touched(self):
        """Toggle selection mode."""
        # button is toggled automatically when clicked, just update the attribute
        self.all_touched = self.toggle_all_touched_btn.isChecked()

    def point_clicked(self, point=None, button=None):
        if self.raster is None:
            self.uc.bar_warn("Choose a raster to work with...", dur=3)
            return

        if self.logger:
            self.logger.debug(f"Clicked point in canvas CRS: {point if point else self.last_point}")

        if point is None:
            ptxy_in_src_crs = self.last_point
        else:
            if self.crs_transform:
                if self.logger:
                    self.logger.debug(f"Transforming clicked point {point}")
                try:
                    ptxy_in_src_crs = self.crs_transform.transform(point)
                except QgsCsException as err:
                    self.uc.show_warn(
                        "Point coordinates transformation failed! Check the raster projection:\n\n{}".format(repr(err)))
                    return
            else:
                ptxy_in_src_crs = QgsPointXY(point.x(), point.y())

        if self.logger:
            self.logger.debug(f"Clicked point in raster CRS: {ptxy_in_src_crs}")
        self.last_point = ptxy_in_src_crs

        ident_vals = self.handler.provider.identify(ptxy_in_src_crs, QgsRaster.IdentifyFormatValue).results()
        cur_vals = list(ident_vals.values())

        # check if the point is within active raster extent
        if not self.rbounds[0] <= ptxy_in_src_crs.x() <= self.rbounds[2]:
            self.uc.bar_info("Out of x bounds", dur=3)
            return
        if not self.rbounds[1] <= ptxy_in_src_crs.y() <= self.rbounds[3]:
            self.uc.bar_info("Out of y bounds", dur=3)
            return

        if self.mode == 'draw':
            new_vals = self.spin_boxes.get_values()
            if self.logger:
                self.logger.debug(f"Applying const value {new_vals}")
            self.apply_values_single_cell(new_vals)
        else:
            self.spin_boxes.set_values(cur_vals)
            if 2 < self.handler.bands_nr < 5:
                self.color_picker_connection(connect=False)
                self.color_btn.setColor(QColor(*self.spin_boxes.get_values()[:4]))
                self.color_picker_connection(connect=True)

    def set_values_from_picker(self, c):
        """Set bands spinboxes values after color change in the color picker"""
        values = None
        if self.handler.bands_nr > 2:
            values = [c.red(), c.green(), c.blue()]
            if self.handler.bands_nr == 4:
                values.append(c.alpha())
        if values:
            self.spin_boxes.set_values(values)

    def set_nodata(self):
        """Set NoData value(s) for each band of current raster."""
        if not self.raster:
            self.uc.bar_warn('Select a raster layer to define/change NoData value!')
            return
        if self.handler.provider.userNoDataValues(1):
            note = '\nNote: there is a user defined NODATA value.\nCheck the raster properties (Transparency).'
        else:
            note = ''
        dt = self.handler.provider.dataType(1)
        
        # current NODATA value
        if self.handler.provider.sourceHasNoDataValue(1):
            cur_nodata = self.handler.provider.sourceNoDataValue(1)
            if dt < 6:
                cur_nodata = '{0:d}'.format(int(float(cur_nodata)))
        else:
            cur_nodata = ''
        
        label = 'Define/change raster NODATA value.\n\n'
        label += 'Raster src_data type: {}.{}'.format(dtypes[dt]['name'], note)
        nd, ok = QInputDialog.getText(None, "Define NODATA Value", label, QLineEdit.Normal, str(cur_nodata))
        if not ok:
            return
        if not is_number(nd):
            self.uc.show_warn('Wrong NODATA value!')
            return
        new_nodata = int(nd) if dt < 6 else float(nd)
        
        # set the NODATA value for each band
        res = []
        for nr in self.handler.bands_range:
            res.append(self.handler.provider.setNoDataValue(nr, new_nodata))
            self.handler.provider.sourceHasNoDataValue(nr)
        
        if False in res:
            self.uc.show_warn('Setting new NODATA value failed!')
        else:
            self.uc.bar_info('Successful setting new NODATA values!', dur=2)

        self.set_active_raster()
        self.raster.triggerRepaint()
        
    def check_undo_redo_btns(self):
        """Enable/Disable undo and redo buttons based on availability of undo/redo for current raster."""
        self.undo_btn.setDisabled(True)
        self.redo_btn.setDisabled(True)
        if self.raster is None or self.raster.id() not in self.changes:
            return
        changes = self.changes[self.raster.id()]
        if changes.nr_undos() > 0:
            self.undo_btn.setEnabled(True)
        if changes.nr_redos() > 0:
            self.redo_btn.setEnabled(True)

    def enable_toolbar_actions(self, enable=True):
        """Enable / disable all toolbar actions but Help (for vectors and unsupported rasters)"""
        for widget in self.actions + [self.width_unit_cbo, self.line_width_sbox]:
            widget.setEnabled(enable)
            if widget in self.actions_always_on:
                widget.setEnabled(True)
        self.spin_boxes.enable(enable)

    @staticmethod
    def check_layer(layer):
        """Check if we can work with the raster"""
        if layer is None:
            return False
        if layer.type() != QgsMapLayerType.RasterLayer:
            return False
        if layer.providerType() != 'gdal':
            return False
        if all([
            layer.isValid(),
            layer.crs() is not None,
            check_gdal_driver_create_option(layer),                 # GDAL driver has CREATE option
            os.path.isfile(layer.dataProvider().dataSourceUri()),   # is it a local file?
        ]):
            return True
        else:
            return False

    def set_bands_cbo(self):
        self.bands_cbo.currentIndexChanged.disconnect(self.update_active_bands)
        self.bands_cbo.clear()
        for band in self.handler.bands_range:
            self.bands_cbo.addItem(f"{band}", [band])
        if self.handler.bands_nr > 1:
            self.bands_cbo.addItem(self.RGB, [1, 2, 3])
        self.bands_cbo.setCurrentIndex(0)
        self.bands_cbo.currentIndexChanged.connect(self.update_active_bands)

    def update_active_bands(self, idx):
        bands = self.bands_cbo.currentData()
        self.handler.active_bands = bands
        self.spin_boxes.create_spinboxes(bands, self.handler.data_types, self.handler.nodata_values)
        self.color_btn.setEnabled(len(bands) > 1)
        self.exp_dlg_btn.setEnabled(len(bands) == 1)

    def set_active_raster(self):
        """Active layer has changed - check if it is a raster layer and prepare it for the plugin"""
        old_spin_boxes_values = self.spin_boxes.get_values()
        self.crs_transform = None
        layer = self.iface.activeLayer()
        if self.check_layer(layer):
            self.raster = layer
            self.crs_transform = None if self.project.crs() == self.raster.crs() else \
                QgsCoordinateTransform(self.project.crs(), self.raster.crs(), self.project)
            self.handler = RasterHandler(self.raster, self.uc, self.debug)
            supported, unsupported_type = self.handler.write_supported()
            if supported:
                self.enable_toolbar_actions()
                self.set_bands_cbo()
                self.spin_boxes.create_spinboxes(self.handler.active_bands,
                                                 self.handler.data_types, self.handler.nodata_values)
                if self.handler.bands_nr == len(old_spin_boxes_values):
                    self.spin_boxes.set_values(old_spin_boxes_values)
                self.bands_cbo.setEnabled(self.handler.bands_nr > 1)
                self.color_btn.setEnabled(len(self.handler.active_bands) > 1)
                self.rbounds = self.raster.extent().toRectF().getCoords()
                self.handler.raster_changed.connect(self.add_to_undo)
                if self.raster.id() not in self.changes:
                    self.changes[self.raster.id()] = RasterChanges(nr_to_keep=self.settings["undo_steps"])
            else:
                msg = f"The raster has unsupported src_data type: {unsupported_type}"
                msg += "\nServal can't work with it, sorry..."
                self.uc.show_warn(msg)
                self.enable_toolbar_actions(enable=False)
                self.reset_raster()
        
        else:
            # unsupported raster
            self.enable_toolbar_actions(enable=False)
            self.reset_raster()

        self.check_undo_redo_btns()

    def add_to_undo(self, change):
        """Add the old and new blocks to undo stack."""
        self.changes[self.raster.id()].add_change(change)
        self.check_undo_redo_btns()
        if self.logger:
            self.logger.debug(self.get_undo_redo_values())

    def get_undo_redo_values(self):
        changes = self.changes[self.raster.id()]
        return f"nr undos: {changes.nr_undos()}, redos: {changes.nr_redos()}"

    def undo(self):
        undo_data = self.changes[self.raster.id()].undo()
        self.handler.write_block_undo(undo_data)
        self.raster.triggerRepaint()
        self.check_undo_redo_btns()

    def redo(self):
        redo_data = self.changes[self.raster.id()].redo()
        self.handler.write_block_undo(redo_data)
        self.raster.triggerRepaint()
        self.check_undo_redo_btns()

    def reset_raster(self):
        self.raster = None
        self.color_btn.setDisabled(True)

    def color_picker_connection(self, connect=True):
        if connect:
            self.color_btn.colorChanged.connect(self.set_values_from_picker)
        else:
            self.color_btn.colorChanged.disconnect(self.set_values_from_picker)

    @staticmethod
    def show_website():
        QDesktopServices.openUrl(QUrl("https://github.com/lutraconsulting/serval/blob/master/Serval/docs/user_manual.md"))

    def recreate_spatial_index(self, layer):
        """Check if spatial index exists for the layer and if it is relatively old and eventually recreate it."""
        ctime = self.spatial_index_time[layer.id()] if layer.id() in self.spatial_index_time else None
        if ctime is None or datetime.now() - ctime > timedelta(seconds=30):
            self.spatial_index = QgsSpatialIndex(layer.getFeatures(), None, QgsSpatialIndex.FlagStoreFeatureGeometries)
            self.spatial_index_time[layer.id()] = datetime.now()

    def get_nearest_feature(self, pt_feat, vlayer_id):
        """Given the point feature, return nearest feature from vlayer."""
        vlayer = self.project.mapLayer(vlayer_id)
        self.recreate_spatial_index(vlayer)
        ptxy = pt_feat.geometry().asPoint()
        near_fid = self.spatial_index.nearestNeighbor(ptxy)[0]
        return vlayer.getFeature(near_fid)

    def nearest_feature_attr_value(self, pt_feat, vlayer_id, attr_name):
        """Find nearest feature to pt_feat and return its attr_name attribute value."""
        near_feat = self.get_nearest_feature(pt_feat, vlayer_id)
        return near_feat[attr_name]

    def nearest_pt_on_line_interpolate_z(self, pt_feat, vlayer_id):
        """Find nearest line feature to pt_feat and interpolate z value from vertices."""
        near_feat = self.get_nearest_feature(pt_feat, vlayer_id)
        near_geom = near_feat.geometry()
        closest_pt_dist = near_geom.lineLocatePoint(pt_feat.geometry())
        closest_pt = near_geom.interpolate(closest_pt_dist)
        return closest_pt.get().z()

    def intersecting_features_attr_average(self, pt_feat, vlayer_id, attr_name, only_center):
        """
        Find all features intersecting current feature (cell center, or raster cell polygon) and calculate average
        value of their attr_name attribute.
        """
        vlayer = self.project.mapLayer(vlayer_id)
        self.recreate_spatial_index(vlayer)
        ptxy = pt_feat.geometry().asPoint()
        pt_x, pt_y = ptxy.x(), ptxy.y()
        dxy = 0.001
        half_pix_x = self.handler.pixel_size_x / 2.
        half_pix_y = self.handler.pixel_size_y / 2.
        if only_center:
            cell = QgsRectangle(pt_x, pt_y, pt_x + dxy, pt_y + dxy)
        else:
            cell = QgsRectangle(pt_x - half_pix_x, pt_y - half_pix_y,
                                pt_x + half_pix_x, pt_y + half_pix_y)
        inter_fids = self.spatial_index.intersects(cell)
        values = []
        for fid in inter_fids:
            feat = vlayer.getFeature(fid)
            if not feat.geometry().intersects(cell):
                continue
            val = feat[attr_name]
            if not is_number(val):
                continue
            values.append(val)
        if len(values) == 0:
            return None
        return sum(values) / float(len(values))

    def interpolate_from_mesh(self, pt_feat, mesh_layer_id, group, dataset, above_existing):
        """Interpolate from mesh."""
        mesh_layer = self.project.mapLayer(mesh_layer_id)
        ptxy = pt_feat.geometry().asPoint()
        dataset_val = mesh_layer.datasetValue(QgsMeshDatasetIndex(group, dataset), ptxy)
        val = dataset_val.scalar()
        if math.isnan(val):
            return val
        if above_existing:
            ident_vals = self.handler.provider.identify(ptxy, QgsRaster.IdentifyFormatValue).results()
            org_val = list(ident_vals.values())[0]
            if org_val == self.handler.nodata_values[0]:
                return val
            return max(org_val, val)
        else:
            return val
Esempio n. 9
0
 def createWidget(self):
     if self.dialogType == DIALOG_STANDARD:
         return self._panel()
     else:
         w = QgsDoubleSpinBox()
         w.setShowClearButton(False)
         w.setMinimum(0)
         w.setMaximum(99999999999)
         w.setDecimals(6)
         w.setToolTip(self.tr('Resolution of each pixel in output raster, in layer units'))
         return w
class Ui_QgsComposerLegendWidgetBase(QtGui.QWidget):
    def __init__(self, parent):
        self.setObjectName(_fromUtf8("self"))
        self.resize(393, 995)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setMargin(0)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.label_11 = QtGui.QLabel(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_11.sizePolicy().hasHeightForWidth())
        self.label_11.setSizePolicy(sizePolicy)
        self.label_11.setStyleSheet(
            _fromUtf8(
                "padding: 2px; font-weight: bold; background-color: rgb(200, 200, 200);"
            ))
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.verticalLayout.addWidget(self.label_11)
        self.scrollArea = QtGui.QScrollArea(self)
        self.scrollArea.setFrameShape(QtGui.QFrame.StyledPanel)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(
            0, 0, 375, 1478))
        self.scrollAreaWidgetContents.setObjectName(
            _fromUtf8("scrollAreaWidgetContents"))
        self.mainLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.mainLayout.setObjectName(_fromUtf8("mainLayout"))
        self.mMainPropertiesColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mMainPropertiesColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mMainPropertiesColGroupBox.setProperty("syncGroup",
                                                    _fromUtf8("composeritem"))
        self.mMainPropertiesColGroupBox.setProperty("collapsed", False)
        self.mMainPropertiesColGroupBox.setObjectName(
            _fromUtf8("mMainPropertiesColGroupBox"))
        self.formLayout = QtGui.QFormLayout(self.mMainPropertiesColGroupBox)
        self.formLayout.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout.setLabelAlignment(QtCore.Qt.AlignLeading
                                          | QtCore.Qt.AlignLeft
                                          | QtCore.Qt.AlignVCenter)
        self.formLayout.setObjectName(_fromUtf8("formLayout"))
        self.mTitleLabel = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.mTitleLabel.setObjectName(_fromUtf8("mTitleLabel"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.LabelRole,
                                  self.mTitleLabel)
        self.mTitleLineEdit = QtGui.QLineEdit(self.mMainPropertiesColGroupBox)
        self.mTitleLineEdit.setObjectName(_fromUtf8("mTitleLineEdit"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole,
                                  self.mTitleLineEdit)
        self.mMapLabel = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.mMapLabel.setObjectName(_fromUtf8("mMapLabel"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole,
                                  self.mMapLabel)
        self.mMapComboBox = QtGui.QComboBox(self.mMainPropertiesColGroupBox)
        self.mMapComboBox.setObjectName(_fromUtf8("mMapComboBox"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.FieldRole,
                                  self.mMapComboBox)
        self.label = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.label.setObjectName(_fromUtf8("label"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.LabelRole, self.label)
        self.mWrapCharLineEdit = QtGui.QLineEdit(
            self.mMainPropertiesColGroupBox)
        self.mWrapCharLineEdit.setFrame(True)
        self.mWrapCharLineEdit.setObjectName(_fromUtf8("mWrapCharLineEdit"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.FieldRole,
                                  self.mWrapCharLineEdit)
        self.label_15 = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.label_15.setObjectName(_fromUtf8("label_15"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.LabelRole,
                                  self.label_15)
        self.mTitleAlignCombo = QtGui.QComboBox(
            self.mMainPropertiesColGroupBox)
        self.mTitleAlignCombo.setObjectName(_fromUtf8("mTitleAlignCombo"))
        self.mTitleAlignCombo.addItem(_fromUtf8(""))
        self.mTitleAlignCombo.addItem(_fromUtf8(""))
        self.mTitleAlignCombo.addItem(_fromUtf8(""))
        self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole,
                                  self.mTitleAlignCombo)
        self.mainLayout.addWidget(self.mMainPropertiesColGroupBox)
        self.mLegendItemColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mLegendItemColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mLegendItemColGroupBox.setProperty("syncGroup",
                                                _fromUtf8("composeritem"))
        self.mLegendItemColGroupBox.setProperty("collapsed", False)
        self.mLegendItemColGroupBox.setObjectName(
            _fromUtf8("mLegendItemColGroupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.mLegendItemColGroupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.mCheckBoxAutoUpdate = QtGui.QCheckBox(self.mLegendItemColGroupBox)
        self.mCheckBoxAutoUpdate.setChecked(True)
        self.mCheckBoxAutoUpdate.setObjectName(
            _fromUtf8("mCheckBoxAutoUpdate"))
        self.horizontalLayout.addWidget(self.mCheckBoxAutoUpdate)
        spacerItem = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem)
        self.mUpdateAllPushButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        self.mUpdateAllPushButton.setObjectName(
            _fromUtf8("mUpdateAllPushButton"))
        self.horizontalLayout.addWidget(self.mUpdateAllPushButton)
        self.verticalLayout_2.addLayout(self.horizontalLayout)
        self.mItemTreeView = QgsLayerTreeView(self.mLegendItemColGroupBox)
        self.mItemTreeView.setMinimumSize(QtCore.QSize(0, 250))
        self.mItemTreeView.setSelectionMode(
            QtGui.QAbstractItemView.ContiguousSelection)
        self.mItemTreeView.setHeaderHidden(True)
        self.mItemTreeView.setObjectName(_fromUtf8("mItemTreeView"))
        self.mItemTreeView.header().setVisible(False)
        self.verticalLayout_2.addWidget(self.mItemTreeView)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setSpacing(3)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.mMoveDownToolButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMoveDownToolButton.sizePolicy().hasHeightForWidth())
        self.mMoveDownToolButton.setSizePolicy(sizePolicy)
        self.mMoveDownToolButton.setText(_fromUtf8(""))
        icon = QtGui.QIcon()
        icon.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionArrowDown.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mMoveDownToolButton.setIcon(icon)
        self.mMoveDownToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mMoveDownToolButton.setObjectName(
            _fromUtf8("mMoveDownToolButton"))
        self.horizontalLayout_2.addWidget(self.mMoveDownToolButton)
        self.mMoveUpToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mMoveUpToolButton.setText(_fromUtf8(""))
        icon1 = QtGui.QIcon()
        icon1.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionArrowUp.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mMoveUpToolButton.setIcon(icon1)
        self.mMoveUpToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mMoveUpToolButton.setObjectName(_fromUtf8("mMoveUpToolButton"))
        self.horizontalLayout_2.addWidget(self.mMoveUpToolButton)
        self.mAddGroupToolButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        icon2 = QtGui.QIcon()
        icon2.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionAddGroup.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mAddGroupToolButton.setIcon(icon2)
        self.mAddGroupToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mAddGroupToolButton.setObjectName(
            _fromUtf8("mAddGroupToolButton"))
        self.horizontalLayout_2.addWidget(self.mAddGroupToolButton)
        self.mAddToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mAddToolButton.setText(_fromUtf8(""))
        icon3 = QtGui.QIcon()
        icon3.addPixmap(
            QtGui.QPixmap(
                _fromUtf8("Resource/images/themes/default/symbologyAdd.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mAddToolButton.setIcon(icon3)
        self.mAddToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mAddToolButton.setObjectName(_fromUtf8("mAddToolButton"))
        self.horizontalLayout_2.addWidget(self.mAddToolButton)
        self.mRemoveToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mRemoveToolButton.setText(_fromUtf8(""))
        icon4 = QtGui.QIcon()
        icon4.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/symbologyRemove.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mRemoveToolButton.setIcon(icon4)
        self.mRemoveToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mRemoveToolButton.setObjectName(_fromUtf8("mRemoveToolButton"))
        self.horizontalLayout_2.addWidget(self.mRemoveToolButton)
        self.mEditPushButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mEditPushButton.setText(_fromUtf8(""))
        icon5 = QtGui.QIcon()
        icon5.addPixmap(
            QtGui.QPixmap(
                _fromUtf8("Resource/images/themes/default/symbologyEdit.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mEditPushButton.setIcon(icon5)
        self.mEditPushButton.setIconSize(QtCore.QSize(20, 20))
        self.mEditPushButton.setObjectName(_fromUtf8("mEditPushButton"))
        self.horizontalLayout_2.addWidget(self.mEditPushButton)
        self.mCountToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mCountToolButton.setEnabled(False)
        self.mCountToolButton.setText(_fromUtf8(""))
        icon6 = QtGui.QIcon()
        icon6.addPixmap(
            QtGui.QPixmap(
                _fromUtf8("Resource/images/themes/default/mActionSum.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mCountToolButton.setIcon(icon6)
        self.mCountToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mCountToolButton.setCheckable(True)
        self.mCountToolButton.setObjectName(_fromUtf8("mCountToolButton"))
        self.horizontalLayout_2.addWidget(self.mCountToolButton)
        self.mFilterByMapToolButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        icon7 = QtGui.QIcon()
        icon7.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionFilter2.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mFilterByMapToolButton.setIcon(icon7)
        self.mFilterByMapToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mFilterByMapToolButton.setCheckable(True)
        self.mFilterByMapToolButton.setObjectName(
            _fromUtf8("mFilterByMapToolButton"))
        self.horizontalLayout_2.addWidget(self.mFilterByMapToolButton)
        self.mExpressionFilterButton = QgsLegendFilterButton(
            self.mLegendItemColGroupBox)
        self.mExpressionFilterButton.setText(_fromUtf8(""))
        icon8 = QtGui.QIcon()
        icon8.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mIconExpressionFilter.svg")
            ), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mExpressionFilterButton.setIcon(icon8)
        self.mExpressionFilterButton.setIconSize(QtCore.QSize(20, 20))
        self.mExpressionFilterButton.setObjectName(
            _fromUtf8("mExpressionFilterButton"))
        self.horizontalLayout_2.addWidget(self.mExpressionFilterButton)
        spacerItem1 = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem1)
        self.verticalLayout_2.addLayout(self.horizontalLayout_2)
        self.mFilterLegendByAtlasCheckBox = QtGui.QCheckBox(
            self.mLegendItemColGroupBox)
        self.mFilterLegendByAtlasCheckBox.setObjectName(
            _fromUtf8("mFilterLegendByAtlasCheckBox"))
        self.verticalLayout_2.addWidget(self.mFilterLegendByAtlasCheckBox)
        self.mainLayout.addWidget(self.mLegendItemColGroupBox)
        self.mFontsColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mFontsColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mFontsColGroupBox.setProperty("syncGroup",
                                           _fromUtf8("composeritem"))
        self.mFontsColGroupBox.setProperty("collapsed", True)
        self.mFontsColGroupBox.setObjectName(_fromUtf8("mFontsColGroupBox"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.mFontsColGroupBox)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.mTitleFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mTitleFontButton.sizePolicy().hasHeightForWidth())
        self.mTitleFontButton.setSizePolicy(sizePolicy)
        self.mTitleFontButton.setObjectName(_fromUtf8("mTitleFontButton"))
        self.verticalLayout_3.addWidget(self.mTitleFontButton)
        self.mLayerFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        self.mLayerFontButton.setObjectName(_fromUtf8("mLayerFontButton"))
        self.verticalLayout_3.addWidget(self.mLayerFontButton)
        self.mGroupFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        self.mGroupFontButton.setObjectName(_fromUtf8("mGroupFontButton"))
        self.verticalLayout_3.addWidget(self.mGroupFontButton)
        self.mItemFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        self.mItemFontButton.setObjectName(_fromUtf8("mItemFontButton"))
        self.verticalLayout_3.addWidget(self.mItemFontButton)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.label_16 = QtGui.QLabel(self.mFontsColGroupBox)
        self.label_16.setObjectName(_fromUtf8("label_16"))
        self.horizontalLayout_3.addWidget(self.label_16)
        self.mFontColorButton = QgsColorButtonV2(self.mFontsColGroupBox)
        self.mFontColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mFontColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mFontColorButton.setText(_fromUtf8(""))
        self.mFontColorButton.setObjectName(_fromUtf8("mFontColorButton"))
        self.horizontalLayout_3.addWidget(self.mFontColorButton)
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem2)
        self.verticalLayout_3.addLayout(self.horizontalLayout_3)
        self.mainLayout.addWidget(self.mFontsColGroupBox)
        self.mColumnsColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mColumnsColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mColumnsColGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mColumnsColGroupBox.setProperty("collapsed", True)
        self.mColumnsColGroupBox.setObjectName(
            _fromUtf8("mColumnsColGroupBox"))
        self.formLayout_2 = QtGui.QFormLayout(self.mColumnsColGroupBox)
        self.formLayout_2.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_2.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_2.setObjectName(_fromUtf8("formLayout_2"))
        self.label_2 = QtGui.QLabel(self.mColumnsColGroupBox)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_2)
        self.mColumnCountSpinBox = QgsSpinBox(self.mColumnsColGroupBox)
        self.mColumnCountSpinBox.setPrefix(_fromUtf8(""))
        self.mColumnCountSpinBox.setMinimum(1)
        self.mColumnCountSpinBox.setMaximum(1000)
        self.mColumnCountSpinBox.setObjectName(
            _fromUtf8("mColumnCountSpinBox"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mColumnCountSpinBox)
        self.mEqualColumnWidthCheckBox = QtGui.QCheckBox(
            self.mColumnsColGroupBox)
        self.mEqualColumnWidthCheckBox.setObjectName(
            _fromUtf8("mEqualColumnWidthCheckBox"))
        self.formLayout_2.setWidget(3, QtGui.QFormLayout.SpanningRole,
                                    self.mEqualColumnWidthCheckBox)
        self.mSplitLayerCheckBox = QtGui.QCheckBox(self.mColumnsColGroupBox)
        self.mSplitLayerCheckBox.setObjectName(
            _fromUtf8("mSplitLayerCheckBox"))
        self.formLayout_2.setWidget(4, QtGui.QFormLayout.SpanningRole,
                                    self.mSplitLayerCheckBox)
        self.mainLayout.addWidget(self.mColumnsColGroupBox)
        self.mSymbolsColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mSymbolsColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mSymbolsColGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mSymbolsColGroupBox.setProperty("collapsed", True)
        self.mSymbolsColGroupBox.setObjectName(
            _fromUtf8("mSymbolsColGroupBox"))
        self.formLayout_3 = QtGui.QFormLayout(self.mSymbolsColGroupBox)
        self.formLayout_3.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_3.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_3.setObjectName(_fromUtf8("formLayout_3"))
        self.label_3 = QtGui.QLabel(self.mSymbolsColGroupBox)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.LabelRole,
                                    self.label_3)
        self.mSymbolWidthSpinBox = QgsDoubleSpinBox(self.mSymbolsColGroupBox)
        self.mSymbolWidthSpinBox.setPrefix(_fromUtf8(""))
        self.mSymbolWidthSpinBox.setProperty("showClearButton", False)
        self.mSymbolWidthSpinBox.setObjectName(
            _fromUtf8("mSymbolWidthSpinBox"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole,
                                    self.mSymbolWidthSpinBox)
        self.label_4 = QtGui.QLabel(self.mSymbolsColGroupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_4)
        self.mSymbolHeightSpinBox = QgsDoubleSpinBox(self.mSymbolsColGroupBox)
        self.mSymbolHeightSpinBox.setPrefix(_fromUtf8(""))
        self.mSymbolHeightSpinBox.setProperty("showClearButton", False)
        self.mSymbolHeightSpinBox.setObjectName(
            _fromUtf8("mSymbolHeightSpinBox"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mSymbolHeightSpinBox)
        self.mRasterBorderGroupBox = QgsCollapsibleGroupBoxBasic(
            self.mSymbolsColGroupBox)
        self.mRasterBorderGroupBox.setCheckable(True)
        self.mRasterBorderGroupBox.setProperty("syncGroup",
                                               _fromUtf8("composeritem"))
        self.mRasterBorderGroupBox.setProperty("collapsed", True)
        self.mRasterBorderGroupBox.setObjectName(
            _fromUtf8("mRasterBorderGroupBox"))
        self.gridLayout = QtGui.QGridLayout(self.mRasterBorderGroupBox)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label_17 = QtGui.QLabel(self.mRasterBorderGroupBox)
        self.label_17.setObjectName(_fromUtf8("label_17"))
        self.gridLayout.addWidget(self.label_17, 0, 0, 1, 1)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.mRasterBorderColorButton = QgsColorButtonV2(
            self.mRasterBorderGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mRasterBorderColorButton.sizePolicy().hasHeightForWidth())
        self.mRasterBorderColorButton.setSizePolicy(sizePolicy)
        self.mRasterBorderColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mRasterBorderColorButton.setMaximumSize(
            QtCore.QSize(120, 16777215))
        self.mRasterBorderColorButton.setText(_fromUtf8(""))
        self.mRasterBorderColorButton.setObjectName(
            _fromUtf8("mRasterBorderColorButton"))
        self.horizontalLayout_6.addWidget(self.mRasterBorderColorButton)
        spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem3)
        self.gridLayout.addLayout(self.horizontalLayout_6, 0, 1, 1, 1)
        self.mOutlineWidthLabel = QtGui.QLabel(self.mRasterBorderGroupBox)
        self.mOutlineWidthLabel.setObjectName(_fromUtf8("mOutlineWidthLabel"))
        self.gridLayout.addWidget(self.mOutlineWidthLabel, 1, 0, 1, 1)
        self.mRasterBorderWidthSpinBox = QgsDoubleSpinBox(
            self.mRasterBorderGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mRasterBorderWidthSpinBox.sizePolicy().hasHeightForWidth())
        self.mRasterBorderWidthSpinBox.setSizePolicy(sizePolicy)
        self.mRasterBorderWidthSpinBox.setSingleStep(0.1)
        self.mRasterBorderWidthSpinBox.setProperty("showClearButton", False)
        self.mRasterBorderWidthSpinBox.setObjectName(
            _fromUtf8("mRasterBorderWidthSpinBox"))
        self.gridLayout.addWidget(self.mRasterBorderWidthSpinBox, 1, 1, 1, 1)
        self.formLayout_3.setWidget(2, QtGui.QFormLayout.SpanningRole,
                                    self.mRasterBorderGroupBox)
        self.mainLayout.addWidget(self.mSymbolsColGroupBox)
        self.mSymbolsColGroupBox_2 = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mSymbolsColGroupBox_2.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mSymbolsColGroupBox_2.setProperty("syncGroup",
                                               _fromUtf8("composeritem"))
        self.mSymbolsColGroupBox_2.setProperty("collapsed", True)
        self.mSymbolsColGroupBox_2.setObjectName(
            _fromUtf8("mSymbolsColGroupBox_2"))
        self.formLayout_5 = QtGui.QFormLayout(self.mSymbolsColGroupBox_2)
        self.formLayout_5.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_5.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_5.setObjectName(_fromUtf8("formLayout_5"))
        self.label_13 = QtGui.QLabel(self.mSymbolsColGroupBox_2)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.formLayout_5.setWidget(0, QtGui.QFormLayout.LabelRole,
                                    self.label_13)
        self.mWmsLegendWidthSpinBox = QgsDoubleSpinBox(
            self.mSymbolsColGroupBox_2)
        self.mWmsLegendWidthSpinBox.setPrefix(_fromUtf8(""))
        self.mWmsLegendWidthSpinBox.setMaximum(9999.0)
        self.mWmsLegendWidthSpinBox.setProperty("showClearButton", False)
        self.mWmsLegendWidthSpinBox.setObjectName(
            _fromUtf8("mWmsLegendWidthSpinBox"))
        self.formLayout_5.setWidget(0, QtGui.QFormLayout.FieldRole,
                                    self.mWmsLegendWidthSpinBox)
        self.label_14 = QtGui.QLabel(self.mSymbolsColGroupBox_2)
        self.label_14.setObjectName(_fromUtf8("label_14"))
        self.formLayout_5.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_14)
        self.mWmsLegendHeightSpinBox = QgsDoubleSpinBox(
            self.mSymbolsColGroupBox_2)
        self.mWmsLegendHeightSpinBox.setPrefix(_fromUtf8(""))
        self.mWmsLegendHeightSpinBox.setMaximum(9999.0)
        self.mWmsLegendHeightSpinBox.setProperty("showClearButton", False)
        self.mWmsLegendHeightSpinBox.setObjectName(
            _fromUtf8("mWmsLegendHeightSpinBox"))
        self.formLayout_5.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mWmsLegendHeightSpinBox)
        self.mainLayout.addWidget(self.mSymbolsColGroupBox_2)
        self.mSpacingColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mSpacingColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mSpacingColGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mSpacingColGroupBox.setProperty("collapsed", True)
        self.mSpacingColGroupBox.setObjectName(
            _fromUtf8("mSpacingColGroupBox"))
        self.formLayout_4 = QtGui.QFormLayout(self.mSpacingColGroupBox)
        self.formLayout_4.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_4.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_4.setObjectName(_fromUtf8("formLayout_4"))
        self.label_5 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_5)
        self.mGroupSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mGroupSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mGroupSpaceSpinBox.setObjectName(_fromUtf8("mGroupSpaceSpinBox"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mGroupSpaceSpinBox)
        self.label_6 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.LabelRole,
                                    self.label_6)
        self.mLayerSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mLayerSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mLayerSpaceSpinBox.setObjectName(_fromUtf8("mLayerSpaceSpinBox"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.FieldRole,
                                    self.mLayerSpaceSpinBox)
        self.label_7 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.LabelRole,
                                    self.label_7)
        self.mSymbolSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mSymbolSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mSymbolSpaceSpinBox.setObjectName(
            _fromUtf8("mSymbolSpaceSpinBox"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.FieldRole,
                                    self.mSymbolSpaceSpinBox)
        self.label_8 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.formLayout_4.setWidget(4, QtGui.QFormLayout.LabelRole,
                                    self.label_8)
        self.mIconLabelSpaceSpinBox = QgsDoubleSpinBox(
            self.mSpacingColGroupBox)
        self.mIconLabelSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mIconLabelSpaceSpinBox.setObjectName(
            _fromUtf8("mIconLabelSpaceSpinBox"))
        self.formLayout_4.setWidget(4, QtGui.QFormLayout.FieldRole,
                                    self.mIconLabelSpaceSpinBox)
        self.label_9 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.formLayout_4.setWidget(5, QtGui.QFormLayout.LabelRole,
                                    self.label_9)
        self.mBoxSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mBoxSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mBoxSpaceSpinBox.setObjectName(_fromUtf8("mBoxSpaceSpinBox"))
        self.formLayout_4.setWidget(5, QtGui.QFormLayout.FieldRole,
                                    self.mBoxSpaceSpinBox)
        self.label_12 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.formLayout_4.setWidget(6, QtGui.QFormLayout.LabelRole,
                                    self.label_12)
        self.mColumnSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mColumnSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mColumnSpaceSpinBox.setObjectName(
            _fromUtf8("mColumnSpaceSpinBox"))
        self.formLayout_4.setWidget(6, QtGui.QFormLayout.FieldRole,
                                    self.mColumnSpaceSpinBox)
        self.label_10 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.LabelRole,
                                    self.label_10)
        self.mTitleSpaceBottomSpinBox = QgsDoubleSpinBox(
            self.mSpacingColGroupBox)
        self.mTitleSpaceBottomSpinBox.setObjectName(
            _fromUtf8("mTitleSpaceBottomSpinBox"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.FieldRole,
                                    self.mTitleSpaceBottomSpinBox)
        self.mainLayout.addWidget(self.mSpacingColGroupBox)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout.addWidget(self.scrollArea)
        self.mTitleLabel.setBuddy(self.mTitleLineEdit)
        self.mOutlineWidthLabel.setBuddy(self.mRasterBorderWidthSpinBox)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.scrollArea, self.mMainPropertiesColGroupBox)
        self.setTabOrder(self.mMainPropertiesColGroupBox, self.mTitleLineEdit)
        self.setTabOrder(self.mTitleLineEdit, self.mTitleAlignCombo)
        self.setTabOrder(self.mTitleAlignCombo, self.mMapComboBox)
        self.setTabOrder(self.mMapComboBox, self.mWrapCharLineEdit)
        self.setTabOrder(self.mWrapCharLineEdit, self.mLegendItemColGroupBox)
        self.setTabOrder(self.mLegendItemColGroupBox, self.mCheckBoxAutoUpdate)
        self.setTabOrder(self.mCheckBoxAutoUpdate, self.mUpdateAllPushButton)
        self.setTabOrder(self.mUpdateAllPushButton, self.mItemTreeView)
        self.setTabOrder(self.mItemTreeView, self.mMoveDownToolButton)
        self.setTabOrder(self.mMoveDownToolButton, self.mMoveUpToolButton)
        self.setTabOrder(self.mMoveUpToolButton, self.mAddGroupToolButton)
        self.setTabOrder(self.mAddGroupToolButton, self.mAddToolButton)
        self.setTabOrder(self.mAddToolButton, self.mRemoveToolButton)
        self.setTabOrder(self.mRemoveToolButton, self.mEditPushButton)
        self.setTabOrder(self.mEditPushButton, self.mCountToolButton)
        self.setTabOrder(self.mCountToolButton, self.mFilterByMapToolButton)
        self.setTabOrder(self.mFilterByMapToolButton,
                         self.mExpressionFilterButton)
        self.setTabOrder(self.mExpressionFilterButton,
                         self.mFilterLegendByAtlasCheckBox)
        self.setTabOrder(self.mFilterLegendByAtlasCheckBox,
                         self.mFontsColGroupBox)
        self.setTabOrder(self.mFontsColGroupBox, self.mTitleFontButton)
        self.setTabOrder(self.mTitleFontButton, self.mLayerFontButton)
        self.setTabOrder(self.mLayerFontButton, self.mGroupFontButton)
        self.setTabOrder(self.mGroupFontButton, self.mItemFontButton)
        self.setTabOrder(self.mItemFontButton, self.mFontColorButton)
        self.setTabOrder(self.mFontColorButton, self.mColumnsColGroupBox)
        self.setTabOrder(self.mColumnsColGroupBox, self.mColumnCountSpinBox)
        self.setTabOrder(self.mColumnCountSpinBox,
                         self.mEqualColumnWidthCheckBox)
        self.setTabOrder(self.mEqualColumnWidthCheckBox,
                         self.mSplitLayerCheckBox)
        self.setTabOrder(self.mSplitLayerCheckBox, self.mSymbolsColGroupBox)
        self.setTabOrder(self.mSymbolsColGroupBox, self.mSymbolWidthSpinBox)
        self.setTabOrder(self.mSymbolWidthSpinBox, self.mSymbolHeightSpinBox)
        self.setTabOrder(self.mSymbolHeightSpinBox, self.mRasterBorderGroupBox)
        self.setTabOrder(self.mRasterBorderGroupBox,
                         self.mRasterBorderColorButton)
        self.setTabOrder(self.mRasterBorderColorButton,
                         self.mRasterBorderWidthSpinBox)
        self.setTabOrder(self.mRasterBorderWidthSpinBox,
                         self.mSymbolsColGroupBox_2)
        self.setTabOrder(self.mSymbolsColGroupBox_2,
                         self.mWmsLegendWidthSpinBox)
        self.setTabOrder(self.mWmsLegendWidthSpinBox,
                         self.mWmsLegendHeightSpinBox)
        self.setTabOrder(self.mWmsLegendHeightSpinBox,
                         self.mSpacingColGroupBox)
        self.setTabOrder(self.mSpacingColGroupBox,
                         self.mTitleSpaceBottomSpinBox)
        self.setTabOrder(self.mTitleSpaceBottomSpinBox,
                         self.mGroupSpaceSpinBox)
        self.setTabOrder(self.mGroupSpaceSpinBox, self.mLayerSpaceSpinBox)
        self.setTabOrder(self.mLayerSpaceSpinBox, self.mSymbolSpaceSpinBox)
        self.setTabOrder(self.mSymbolSpaceSpinBox, self.mIconLabelSpaceSpinBox)
        self.setTabOrder(self.mIconLabelSpaceSpinBox, self.mBoxSpaceSpinBox)
        self.setTabOrder(self.mBoxSpaceSpinBox, self.mColumnSpaceSpinBox)

    def retranslateUi(self):
        self.setWindowTitle(
            _translate("QgsComposerLegendWidgetBase", "Legend Options", None))
        self.label_11.setText(
            _translate("QgsComposerLegendWidgetBase", "Legend", None))
        self.mMainPropertiesColGroupBox.setTitle(
            _translate("QgsComposerLegendWidgetBase", "Main properties", None))
        self.mTitleLabel.setText(
            _translate("QgsComposerLegendWidgetBase", "&Title", None))
        self.mMapLabel.setText(
            _translate("QgsComposerLegendWidgetBase", "Map", None))
        self.label.setText(
            _translate("QgsComposerLegendWidgetBase", "Wrap text on", None))
        self.label_15.setText(
            _translate("QgsComposerLegendWidgetBase", "Title alignment:",
                       None))
        self.mTitleAlignCombo.setItemText(
            0, _translate("QgsComposerLegendWidgetBase", "Left", None))
        self.mTitleAlignCombo.setItemText(
            1, _translate("QgsComposerLegendWidgetBase", "Center", None))
        self.mTitleAlignCombo.setItemText(
            2, _translate("QgsComposerLegendWidgetBase", "Right", None))
        self.mLegendItemColGroupBox.setTitle(
            _translate("QgsComposerLegendWidgetBase", "Legend items", None))
        self.mCheckBoxAutoUpdate.setText(
            _translate("QgsComposerLegendWidgetBase", "Auto update", None))
        self.mUpdateAllPushButton.setToolTip(
            _translate(
                "QgsComposerLegendWidgetBase",
                "Update whole legend. Layers are added/removed according to main application legend. User defined labels will be deleted.",
                None))
        self.mUpdateAllPushButton.setText(
            _translate("QgsComposerLegendWidgetBase", "Update all", None))
        self.mAddGroupToolButton.setToolTip(
            _translate("QgsComposerLegendWidgetBase", "Add group", None))
        self.mAddGroupToolButton.setText(
            _translate("QgsComposerLegendWidgetBase", "...", None))
        self.mCountToolButton.setToolTip(
            _translate("QgsComposerLegendWidgetBase",
                       "Show feature count for each class of vector layer.",
                       None))
        self.mFilterByMapToolButton.setToolTip(
            _translate("QgsComposerLegendWidgetBase",
                       "Filter Legend By Map Content", None))
        self.mFilterLegendByAtlasCheckBox.setToolTip(
            _translate(
                "QgsComposerLegendWidgetBase",
                "Filter out legend elements that lie outside the current atlas feature.",
                None))
        self.mFilterLegendByAtlasCheckBox.setText(
            _translate("QgsComposerLegendWidgetBase",
                       "Only show items inside current atlas feature", None))
        self.mFontsColGroupBox.setTitle(
            _translate("QgsComposerLegendWidgetBase", "Fonts", None))
        self.mTitleFontButton.setText(
            _translate("QgsComposerLegendWidgetBase", "Title font...", None))
        self.mLayerFontButton.setText(
            _translate("QgsComposerLegendWidgetBase", "Subgroup font...",
                       None))
        self.mGroupFontButton.setText(
            _translate("QgsComposerLegendWidgetBase", "Group font...", None))
        self.mItemFontButton.setText(
            _translate("QgsComposerLegendWidgetBase", "Item font...", None))
        self.label_16.setText(
            _translate("QgsComposerLegendWidgetBase", "Font color", None))
        self.mColumnsColGroupBox.setTitle(
            _translate("QgsComposerLegendWidgetBase", "Columns", None))
        self.label_2.setText(
            _translate("QgsComposerLegendWidgetBase", "Count", None))
        self.mEqualColumnWidthCheckBox.setText(
            _translate("QgsComposerLegendWidgetBase", "Equal column widths",
                       None))
        self.mSplitLayerCheckBox.setToolTip(
            _translate("QgsComposerLegendWidgetBase",
                       "Allow splitting layer items into multiple columns.",
                       None))
        self.mSplitLayerCheckBox.setText(
            _translate("QgsComposerLegendWidgetBase", "Split layers", None))
        self.mSymbolsColGroupBox.setTitle(
            _translate("QgsComposerLegendWidgetBase", "Symbol", None))
        self.label_3.setText(
            _translate("QgsComposerLegendWidgetBase", "Symbol width", None))
        self.mSymbolWidthSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_4.setText(
            _translate("QgsComposerLegendWidgetBase", "Symbol height", None))
        self.mSymbolHeightSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.mRasterBorderGroupBox.setTitle(
            _translate("QgsComposerLegendWidgetBase",
                       "Draw border for raster symbols", None))
        self.label_17.setText(
            _translate("QgsComposerLegendWidgetBase", "Border color", None))
        self.mOutlineWidthLabel.setText(
            _translate("QgsComposerLegendWidgetBase", "Thickness", None))
        self.mRasterBorderWidthSpinBox.setSpecialValueText(
            _translate("QgsComposerLegendWidgetBase", "Hairline", None))
        self.mRasterBorderWidthSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.mSymbolsColGroupBox_2.setTitle(
            _translate("QgsComposerLegendWidgetBase", "WMS LegendGraphic",
                       None))
        self.label_13.setText(
            _translate("QgsComposerLegendWidgetBase", "Legend width", None))
        self.mWmsLegendWidthSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_14.setText(
            _translate("QgsComposerLegendWidgetBase", "Legend height", None))
        self.mWmsLegendHeightSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.mSpacingColGroupBox.setTitle(
            _translate("QgsComposerLegendWidgetBase", "Spacing", None))
        self.label_5.setToolTip(
            _translate("QgsComposerLegendWidgetBase",
                       "Space above text using group style.", None))
        self.label_5.setText(
            _translate("QgsComposerLegendWidgetBase", "Group Space", None))
        self.mGroupSpaceSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_6.setToolTip(
            _translate("QgsComposerLegendWidgetBase",
                       "Space above text using subgroup style.", None))
        self.label_6.setText(
            _translate("QgsComposerLegendWidgetBase", "Subgroup space", None))
        self.mLayerSpaceSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_7.setToolTip(
            _translate("QgsComposerLegendWidgetBase",
                       "Space above symbol and symbol label.", None))
        self.label_7.setText(
            _translate("QgsComposerLegendWidgetBase", "Symbol space", None))
        self.mSymbolSpaceSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_8.setToolTip(
            _translate(
                "QgsComposerLegendWidgetBase",
                "Space between symbol icon and symbol label (symbol label left margin).",
                None))
        self.label_8.setText(
            _translate("QgsComposerLegendWidgetBase", "Icon label space",
                       None))
        self.mIconLabelSpaceSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_9.setText(
            _translate("QgsComposerLegendWidgetBase", "Box space", None))
        self.mBoxSpaceSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_12.setText(
            _translate("QgsComposerLegendWidgetBase", "Column space", None))
        self.mColumnSpaceSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
        self.label_10.setToolTip(
            _translate("QgsComposerLegendWidgetBase", "Space below title.",
                       None))
        self.label_10.setText(
            _translate("QgsComposerLegendWidgetBase", "Title space", None))
        self.mTitleSpaceBottomSpinBox.setToolTip(
            _translate("QgsComposerLegendWidgetBase", "Space below title.",
                       None))
        self.mTitleSpaceBottomSpinBox.setSuffix(
            _translate("QgsComposerLegendWidgetBase", " mm", None))
Esempio n. 11
0
    def __init__(self, parent):
        QtGui.QWidget.__init__(self, parent)
        self.setObjectName(_fromUtf8("QgsComposerShapeWidgetBase"))
        self.resize(285, 148)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setMargin(0)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.label_2 = QtGui.QLabel(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_2.sizePolicy().hasHeightForWidth())
        self.label_2.setSizePolicy(sizePolicy)
        self.label_2.setStyleSheet(_fromUtf8("padding: 2px; font-weight: bold; background-color: rgb(200, 200, 200);"))
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.verticalLayout.addWidget(self.label_2)
        self.scrollArea = QtGui.QScrollArea(self)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, -22, 267, 147))
        self.scrollAreaWidgetContents.setObjectName(_fromUtf8("scrollAreaWidgetContents"))
        self.mainLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.mainLayout.setObjectName(_fromUtf8("mainLayout"))
        self.groupBox = QgsCollapsibleGroupBoxBasic(self.scrollAreaWidgetContents)
        self.groupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.groupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.groupBox.setProperty("collapsed", False)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.gridLayout = QtGui.QGridLayout(self.groupBox)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label_3 = QtGui.QLabel(self.groupBox)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout.addWidget(self.label_3, 1, 0, 1, 1)
        self.mCornerRadiusSpinBox = QgsDoubleSpinBox(self.groupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.mCornerRadiusSpinBox.sizePolicy().hasHeightForWidth())
        self.mCornerRadiusSpinBox.setSizePolicy(sizePolicy)
        self.mCornerRadiusSpinBox.setMaximum(999.0)
        self.mCornerRadiusSpinBox.setObjectName(_fromUtf8("mCornerRadiusSpinBox"))
        self.gridLayout.addWidget(self.mCornerRadiusSpinBox, 1, 1, 1, 1)
        self.label = QtGui.QLabel(self.groupBox)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 2, 0, 1, 1)
        self.mShapeStyleButton = QtGui.QPushButton(self.groupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.mShapeStyleButton.sizePolicy().hasHeightForWidth())
        self.mShapeStyleButton.setSizePolicy(sizePolicy)
        self.mShapeStyleButton.setObjectName(_fromUtf8("mShapeStyleButton"))
        self.gridLayout.addWidget(self.mShapeStyleButton, 2, 1, 1, 1)
        self.mShapeComboBox = QtGui.QComboBox(self.groupBox)
        self.mShapeComboBox.setObjectName(_fromUtf8("mShapeComboBox"))
        self.gridLayout.addWidget(self.mShapeComboBox, 0, 0, 1, 2)
        self.mainLayout.addWidget(self.groupBox)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout.addWidget(self.scrollArea)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.groupBox, self.scrollArea)
        self.setTabOrder(self.scrollArea, self.mShapeComboBox)
        self.setTabOrder(self.mShapeComboBox, self.mCornerRadiusSpinBox)
        self.setTabOrder(self.mCornerRadiusSpinBox, self.mShapeStyleButton)
    def __init__(self, parent, QgsComposerLabelWidgetBase):
        QtGui.QWidget.__init__(self, parent)
        self.setObjectName(_fromUtf8("self"))
        self.resize(304, 705)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        self._2 = QtGui.QVBoxLayout(self)
        self._2.setSpacing(0)
        self._2.setMargin(0)
        self._2.setObjectName(_fromUtf8("_2"))
        self.label = QtGui.QLabel(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label.sizePolicy().hasHeightForWidth())
        self.label.setSizePolicy(sizePolicy)
        self.label.setStyleSheet(
            _fromUtf8(
                "padding: 2px; font-weight: bold; background-color: rgb(200, 200, 200);"
            ))
        self.label.setObjectName(_fromUtf8("label"))
        self._2.addWidget(self.label)
        self.scrollArea = QtGui.QScrollArea(self)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 302, 682))
        self.scrollAreaWidgetContents.setObjectName(
            _fromUtf8("scrollAreaWidgetContents"))
        self.mainLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.mainLayout.setObjectName(_fromUtf8("mainLayout"))
        self.mTextGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mTextGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mTextGroupBox.setCheckable(False)
        self.mTextGroupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.mTextGroupBox.setProperty("collapsed", False)
        self.mTextGroupBox.setObjectName(_fromUtf8("mTextGroupBox"))
        self.gridLayout_2 = QtGui.QGridLayout(self.mTextGroupBox)
        self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
        self.mTextEdit = QtGui.QPlainTextEdit(self.mTextGroupBox)
        self.mTextEdit.setTabStopWidth(10)
        self.mTextEdit.setObjectName(_fromUtf8("mTextEdit"))
        self.gridLayout_2.addWidget(self.mTextEdit, 0, 0, 1, 1)
        self.mHtmlCheckBox = QtGui.QCheckBox(self.mTextGroupBox)
        self.mHtmlCheckBox.setObjectName(_fromUtf8("mHtmlCheckBox"))
        self.gridLayout_2.addWidget(self.mHtmlCheckBox, 1, 0, 1, 1)
        self.mInsertExpressionButton = QtGui.QPushButton(self.mTextGroupBox)
        self.mInsertExpressionButton.setObjectName(
            _fromUtf8("mInsertExpressionButton"))
        self.gridLayout_2.addWidget(self.mInsertExpressionButton, 2, 0, 1, 1)
        self.mainLayout.addWidget(self.mTextGroupBox)
        self.mAppearanceGroup = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mAppearanceGroup.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mAppearanceGroup.setCheckable(False)
        self.mAppearanceGroup.setProperty("syncGroup",
                                          _fromUtf8("composeritem"))
        self.mAppearanceGroup.setProperty("collapsed", False)
        self.mAppearanceGroup.setObjectName(_fromUtf8("mAppearanceGroup"))
        self.gridLayout = QtGui.QGridLayout(self.mAppearanceGroup)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label_2 = QtGui.QLabel(self.mAppearanceGroup)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.mTopRadioButton = QtGui.QRadioButton(self.mAppearanceGroup)
        self.mTopRadioButton.setObjectName(_fromUtf8("mTopRadioButton"))
        self.buttonGroup = QtGui.QButtonGroup(self)
        self.buttonGroup.setObjectName(_fromUtf8("buttonGroup"))
        self.buttonGroup.addButton(self.mTopRadioButton)
        self.horizontalLayout_6.addWidget(self.mTopRadioButton)
        self.mMiddleRadioButton = QtGui.QRadioButton(self.mAppearanceGroup)
        self.mMiddleRadioButton.setObjectName(_fromUtf8("mMiddleRadioButton"))
        self.buttonGroup.addButton(self.mMiddleRadioButton)
        self.horizontalLayout_6.addWidget(self.mMiddleRadioButton)
        self.mBottomRadioButton = QtGui.QRadioButton(self.mAppearanceGroup)
        self.mBottomRadioButton.setObjectName(_fromUtf8("mBottomRadioButton"))
        self.buttonGroup.addButton(self.mBottomRadioButton)
        self.horizontalLayout_6.addWidget(self.mBottomRadioButton)
        spacerItem = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem)
        self.gridLayout.addLayout(self.horizontalLayout_6, 7, 0, 1, 2)
        self.mMarginXDoubleSpinBox = QgsDoubleSpinBox(self.mAppearanceGroup)
        self.mMarginXDoubleSpinBox.setPrefix(_fromUtf8(""))
        self.mMarginXDoubleSpinBox.setMinimum(-99.99)
        self.mMarginXDoubleSpinBox.setObjectName(
            _fromUtf8("mMarginXDoubleSpinBox"))
        self.gridLayout.addWidget(self.mMarginXDoubleSpinBox, 2, 1, 1, 1)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.mLeftRadioButton = QtGui.QRadioButton(self.mAppearanceGroup)
        self.mLeftRadioButton.setObjectName(_fromUtf8("mLeftRadioButton"))
        self.buttonGroup_2 = QtGui.QButtonGroup(self)
        self.buttonGroup_2.setObjectName(_fromUtf8("buttonGroup_2"))
        self.buttonGroup_2.addButton(self.mLeftRadioButton)
        self.horizontalLayout_5.addWidget(self.mLeftRadioButton)
        self.mCenterRadioButton = QtGui.QRadioButton(self.mAppearanceGroup)
        self.mCenterRadioButton.setObjectName(_fromUtf8("mCenterRadioButton"))
        self.buttonGroup_2.addButton(self.mCenterRadioButton)
        self.horizontalLayout_5.addWidget(self.mCenterRadioButton)
        self.mRightRadioButton = QtGui.QRadioButton(self.mAppearanceGroup)
        self.mRightRadioButton.setObjectName(_fromUtf8("mRightRadioButton"))
        self.buttonGroup_2.addButton(self.mRightRadioButton)
        self.horizontalLayout_5.addWidget(self.mRightRadioButton)
        spacerItem1 = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_5.addItem(spacerItem1)
        self.gridLayout.addLayout(self.horizontalLayout_5, 5, 0, 1, 2)
        self.mHorizontalAlignementLabel = QtGui.QLabel(self.mAppearanceGroup)
        self.mHorizontalAlignementLabel.setObjectName(
            _fromUtf8("mHorizontalAlignementLabel"))
        self.gridLayout.addWidget(self.mHorizontalAlignementLabel, 4, 0, 1, 2)
        self.mVerticalAlignementLabel = QtGui.QLabel(self.mAppearanceGroup)
        self.mVerticalAlignementLabel.setObjectName(
            _fromUtf8("mVerticalAlignementLabel"))
        self.gridLayout.addWidget(self.mVerticalAlignementLabel, 6, 0, 1, 2)
        self.mFontButton = QtGui.QPushButton(self.mAppearanceGroup)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mFontButton.sizePolicy().hasHeightForWidth())
        self.mFontButton.setSizePolicy(sizePolicy)
        self.mFontButton.setObjectName(_fromUtf8("mFontButton"))
        self.gridLayout.addWidget(self.mFontButton, 0, 0, 1, 2)
        self.mMarginXLabel = QtGui.QLabel(self.mAppearanceGroup)
        self.mMarginXLabel.setObjectName(_fromUtf8("mMarginXLabel"))
        self.gridLayout.addWidget(self.mMarginXLabel, 2, 0, 1, 1)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.mFontColorButton = QgsColorButtonV2(self.mAppearanceGroup)
        self.mFontColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mFontColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mFontColorButton.setText(_fromUtf8(""))
        self.mFontColorButton.setObjectName(_fromUtf8("mFontColorButton"))
        self.horizontalLayout.addWidget(self.mFontColorButton)
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem2)
        self.gridLayout.addLayout(self.horizontalLayout, 1, 1, 1, 1)
        self.mMarginYDoubleSpinBox = QgsDoubleSpinBox(self.mAppearanceGroup)
        self.mMarginYDoubleSpinBox.setMinimum(-99.99)
        self.mMarginYDoubleSpinBox.setObjectName(
            _fromUtf8("mMarginYDoubleSpinBox"))
        self.gridLayout.addWidget(self.mMarginYDoubleSpinBox, 3, 1, 1, 1)
        self.mMarginYLabel = QtGui.QLabel(self.mAppearanceGroup)
        self.mMarginYLabel.setObjectName(_fromUtf8("mMarginYLabel"))
        self.gridLayout.addWidget(self.mMarginYLabel, 3, 0, 1, 1)
        self.mainLayout.addWidget(self.mAppearanceGroup)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self._2.addWidget(self.scrollArea)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.scrollArea, self.mTextGroupBox)
        self.setTabOrder(self.mTextGroupBox, self.mTextEdit)
        self.setTabOrder(self.mTextEdit, self.mHtmlCheckBox)
        self.setTabOrder(self.mHtmlCheckBox, self.mInsertExpressionButton)
        self.setTabOrder(self.mInsertExpressionButton, self.mAppearanceGroup)
        self.setTabOrder(self.mAppearanceGroup, self.mFontButton)
        self.setTabOrder(self.mFontButton, self.mFontColorButton)
        self.setTabOrder(self.mFontColorButton, self.mMarginXDoubleSpinBox)
        self.setTabOrder(self.mMarginXDoubleSpinBox,
                         self.mMarginYDoubleSpinBox)
        self.setTabOrder(self.mMarginYDoubleSpinBox, self.mLeftRadioButton)
        self.setTabOrder(self.mLeftRadioButton, self.mCenterRadioButton)
        self.setTabOrder(self.mCenterRadioButton, self.mRightRadioButton)
        self.setTabOrder(self.mRightRadioButton, self.mTopRadioButton)
        self.setTabOrder(self.mTopRadioButton, self.mMiddleRadioButton)
        self.setTabOrder(self.mMiddleRadioButton, self.mBottomRadioButton)
Esempio n. 13
0
    def setupUi(self, Form):
        Form.setObjectName("Form")
        Form.resize(858, 36)
        sizePolicy = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.Preferred,
            QtWidgets.QSizePolicy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(Form.sizePolicy().hasHeightForWidth())
        Form.setSizePolicy(sizePolicy)
        Form.setMinimumSize(QtCore.QSize(0, 20))
        Form.setMaximumSize(QtCore.QSize(900, 50))
        Form.setToolTip("")
        self.gridLayout = QtWidgets.QGridLayout(Form)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)
        self.gridLayout.setSpacing(0)
        self.gridLayout.setObjectName("gridLayout")
        self.splitter = QtWidgets.QSplitter(Form)
        self.splitter.setOrientation(QtCore.Qt.Horizontal)
        self.splitter.setObjectName("splitter")
        self.mMapLayerComboBox = QgsMapLayerComboBox(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.MinimumExpanding,
            QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMapLayerComboBox.sizePolicy().hasHeightForWidth())
        self.mMapLayerComboBox.setSizePolicy(sizePolicy)
        self.mMapLayerComboBox.setMinimumSize(QtCore.QSize(0, 20))
        self.mMapLayerComboBox.setMaximumSize(QtCore.QSize(16777215, 32))
        self.mMapLayerComboBox.setFilters(
            core.QgsMapLayerProxyModel.HasGeometry
            | core.QgsMapLayerProxyModel.LineLayer
            | core.QgsMapLayerProxyModel.NoGeometry
            | core.QgsMapLayerProxyModel.PluginLayer
            | core.QgsMapLayerProxyModel.PointLayer
            | core.QgsMapLayerProxyModel.PolygonLayer
            | core.QgsMapLayerProxyModel.VectorLayer)
        self.mMapLayerComboBox.setObjectName("mMapLayerComboBox")
        self.refreshPushButton = QtWidgets.QPushButton(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.refreshPushButton.sizePolicy().hasHeightForWidth())
        self.refreshPushButton.setSizePolicy(sizePolicy)
        self.refreshPushButton.setMinimumSize(QtCore.QSize(24, 24))
        self.refreshPushButton.setMaximumSize(QtCore.QSize(24, 24))
        self.refreshPushButton.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/plugins/DsgTools/icons/reload.png"),
                       QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.refreshPushButton.setIcon(icon)
        self.refreshPushButton.setIconSize(QtCore.QSize(16, 16))
        self.refreshPushButton.setObjectName("refreshPushButton")
        self.zoomPercentageSpinBox = QgsDoubleSpinBox(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.zoomPercentageSpinBox.sizePolicy().hasHeightForWidth())
        self.zoomPercentageSpinBox.setSizePolicy(sizePolicy)
        self.zoomPercentageSpinBox.setMinimumSize(QtCore.QSize(0, 20))
        self.zoomPercentageSpinBox.setMaximumSize(
            QtCore.QSize(16777215, 16777215))
        self.zoomPercentageSpinBox.setObjectName("zoomPercentageSpinBox")
        self.mScaleWidget = QgsScaleWidget(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.MinimumExpanding,
            QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mScaleWidget.sizePolicy().hasHeightForWidth())
        self.mScaleWidget.setSizePolicy(sizePolicy)
        self.mScaleWidget.setMinimumSize(QtCore.QSize(0, 20))
        self.mScaleWidget.setMaximumSize(QtCore.QSize(16194919, 32))
        self.mScaleWidget.setShowCurrentScaleButton(True)
        self.mScaleWidget.setObjectName("mScaleWidget")
        self.idSpinBox = QtWidgets.QSpinBox(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.MinimumExpanding,
            QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.idSpinBox.sizePolicy().hasHeightForWidth())
        self.idSpinBox.setSizePolicy(sizePolicy)
        self.idSpinBox.setMinimumSize(QtCore.QSize(40, 20))
        self.idSpinBox.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.idSpinBox.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons)
        self.idSpinBox.setSuffix("")
        self.idSpinBox.setObjectName("idSpinBox")
        self.backInspectButton = QtWidgets.QPushButton(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.backInspectButton.sizePolicy().hasHeightForWidth())
        self.backInspectButton.setSizePolicy(sizePolicy)
        self.backInspectButton.setMinimumSize(QtCore.QSize(24, 24))
        self.backInspectButton.setMaximumSize(QtCore.QSize(24, 24))
        self.backInspectButton.setText("")
        icon = QtGui.QIcon()
        icon.addPixmap(
            QtGui.QPixmap(":/plugins/DsgTools/icons/backInspect.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.backInspectButton.setIcon(icon)
        self.backInspectButton.setIconSize(QtCore.QSize(16, 16))
        self.backInspectButton.setObjectName("backInspectButton")
        self.nextInspectButton = QtWidgets.QPushButton(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.nextInspectButton.sizePolicy().hasHeightForWidth())
        self.nextInspectButton.setSizePolicy(sizePolicy)
        self.nextInspectButton.setMinimumSize(QtCore.QSize(24, 24))
        self.nextInspectButton.setMaximumSize(QtCore.QSize(24, 24))
        self.nextInspectButton.setText("")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(
            QtGui.QPixmap(":/plugins/DsgTools/icons/nextInspect.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.nextInspectButton.setIcon(icon1)
        self.nextInspectButton.setIconSize(QtCore.QSize(16, 16))
        self.nextInspectButton.setObjectName("nextInspectButton")
        self.mFieldExpressionWidget = QgsFieldExpressionWidget(self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.MinimumExpanding,
            QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mFieldExpressionWidget.sizePolicy().hasHeightForWidth())
        self.mFieldExpressionWidget.setSizePolicy(sizePolicy)
        self.mFieldExpressionWidget.setMinimumSize(QtCore.QSize(0, 20))
        self.mFieldExpressionWidget.setObjectName("mFieldExpressionWidget")
        self.gridLayout.addWidget(self.splitter, 0, 2, 1, 1)
        self.inspectPushButton = QtWidgets.QPushButton(Form)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.inspectPushButton.sizePolicy().hasHeightForWidth())
        self.inspectPushButton.setSizePolicy(sizePolicy)
        self.inspectPushButton.setMinimumSize(QtCore.QSize(24, 24))
        self.inspectPushButton.setMaximumSize(QtCore.QSize(24, 24))
        self.inspectPushButton.setText("")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(
            QtGui.QPixmap(":/plugins/DsgTools/icons/inspectFeatures.png"),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.inspectPushButton.setIcon(icon2)
        self.inspectPushButton.setIconSize(QtCore.QSize(16, 16))
        self.inspectPushButton.setCheckable(True)
        self.inspectPushButton.setObjectName("inspectPushButton")
        self.gridLayout.addWidget(self.inspectPushButton, 0, 0, 1, 1)
        spacerItem = QtWidgets.QSpacerItem(10, 20, QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Minimum)
        self.gridLayout.addItem(spacerItem, 0, 1, 1, 1)

        self.retranslateUi(Form)
        QtCore.QMetaObject.connectSlotsByName(Form)
Esempio n. 14
0
class DistanceWidget(QWidget):
    """ Widget used to manually edit the selection radius"""

    distanceChanged = pyqtSignal(float)
    distanceEditingFinished = pyqtSignal(Qt.KeyboardModifiers)
    distanceEditingCanceled = pyqtSignal()

    def __init__(self, label, parent=None):
        super().__init__(parent)
        layout = QHBoxLayout(self)
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setAlignment(Qt.AlignLeft)

        if label:
            self.label = QLabel(label, self)
            self.label.setAlignment(Qt.AlignRight | Qt.AlignCenter)
            layout.addWidget(self.label)

        self.spinbox = QgsDoubleSpinBox(self)
        self.spinbox.setSingleStep(1)
        self.spinbox.setValue(0)
        self.spinbox.setMinimum(0)
        self.spinbox.setMaximum(1000000000)
        self.spinbox.setDecimals(6)
        self.spinbox.setShowClearButton(False)
        self.spinbox.setSizePolicy(QSizePolicy.MinimumExpanding,
                                   QSizePolicy.Preferred)
        layout.addWidget(self.spinbox)

        # connect signals
        self.spinbox.installEventFilter(self)
        self.spinbox.valueChanged.connect(self.distanceChanged.emit)

        # config focus
        self.setFocusProxy(self.spinbox)

    def set_distance(self, distance):
        """ set the selection radius """
        self.spinbox.setValue(distance)
        self.spinbox.selectAll()

    def distance(self):
        """ return he selection radius """
        return self.spinbox.value()

    def eventFilter(self, obj, event):
        """ Intercept key press event to emit our own custom signals """
        # pylint: disable=invalid-name

        if obj is self.spinbox and event.type() == QEvent.KeyPress:

            if event.key() == Qt.Key_Escape:

                self.distanceEditingCanceled.emit()
                return True

            if event.key() in (Qt.Key_Enter, Qt.Key_Return):
                # Emit the editing finished signal with modifier to handle remove
                # from selection and add to selection
                self.distanceEditingFinished.emit(event.modifiers())
                return True

        return False
Esempio n. 15
0
    def __init__(self, parent):
        QtGui.QWidget.__init__(self, parent)
        self.setObjectName(_fromUtf8("QgsCompositionWidgetBase"))
        self.resize(345, 506)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setMargin(0)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.scrollArea = QtGui.QScrollArea(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.MinimumExpanding,
                                       QtGui.QSizePolicy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.scrollArea.sizePolicy().hasHeightForWidth())
        self.scrollArea.setSizePolicy(sizePolicy)
        self.scrollArea.setFocusPolicy(QtCore.Qt.WheelFocus)
        self.scrollArea.setFrameShape(QtGui.QFrame.StyledPanel)
        self.scrollArea.setFrameShadow(QtGui.QFrame.Plain)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(
            0, 0, 327, 1085))
        self.scrollAreaWidgetContents.setObjectName(
            _fromUtf8("scrollAreaWidgetContents"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(
            self.scrollAreaWidgetContents)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.groupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.groupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.groupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.groupBox.setProperty("collapsed", False)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.gridLayout = QtGui.QGridLayout(self.groupBox)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.textLabel7 = QtGui.QLabel(self.groupBox)
        self.textLabel7.setWordWrap(True)
        self.textLabel7.setObjectName(_fromUtf8("textLabel7"))
        self.gridLayout.addWidget(self.textLabel7, 4, 0, 1, 1)
        self.label_2 = QtGui.QLabel(self.groupBox)
        self.label_2.setWordWrap(True)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1)
        self.mPaperUnitsComboBox = QtGui.QComboBox(self.groupBox)
        self.mPaperUnitsComboBox.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mPaperUnitsComboBox.sizePolicy().hasHeightForWidth())
        self.mPaperUnitsComboBox.setSizePolicy(sizePolicy)
        self.mPaperUnitsComboBox.setObjectName(
            _fromUtf8("mPaperUnitsComboBox"))
        self.gridLayout.addWidget(self.mPaperUnitsComboBox, 3, 1, 1, 1)
        self.label_3 = QtGui.QLabel(self.groupBox)
        self.label_3.setWordWrap(True)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.gridLayout.addWidget(self.label_3, 3, 0, 1, 1)
        self.textLabel3 = QtGui.QLabel(self.groupBox)
        self.textLabel3.setWordWrap(True)
        self.textLabel3.setObjectName(_fromUtf8("textLabel3"))
        self.gridLayout.addWidget(self.textLabel3, 0, 0, 1, 1)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.mPaperHeightDoubleSpinBox = QgsDoubleSpinBox(self.groupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mPaperHeightDoubleSpinBox.sizePolicy().hasHeightForWidth())
        self.mPaperHeightDoubleSpinBox.setSizePolicy(sizePolicy)
        self.mPaperHeightDoubleSpinBox.setPrefix(_fromUtf8(""))
        self.mPaperHeightDoubleSpinBox.setSuffix(_fromUtf8(""))
        self.mPaperHeightDoubleSpinBox.setMaximum(99999.0)
        self.mPaperHeightDoubleSpinBox.setProperty("showClearButton", False)
        self.mPaperHeightDoubleSpinBox.setObjectName(
            _fromUtf8("mPaperHeightDoubleSpinBox"))
        self.horizontalLayout_3.addWidget(self.mPaperHeightDoubleSpinBox)
        self.mPaperHeightDDBtn = QgsDataDefinedButton(self.groupBox)
        self.mPaperHeightDDBtn.setObjectName(_fromUtf8("mPaperHeightDDBtn"))
        self.horizontalLayout_3.addWidget(self.mPaperHeightDDBtn)
        self.gridLayout.addLayout(self.horizontalLayout_3, 2, 1, 1, 1)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.mPaperWidthDoubleSpinBox = QgsDoubleSpinBox(self.groupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mPaperWidthDoubleSpinBox.sizePolicy().hasHeightForWidth())
        self.mPaperWidthDoubleSpinBox.setSizePolicy(sizePolicy)
        self.mPaperWidthDoubleSpinBox.setPrefix(_fromUtf8(""))
        self.mPaperWidthDoubleSpinBox.setSuffix(_fromUtf8(""))
        self.mPaperWidthDoubleSpinBox.setMaximum(99999.0)
        self.mPaperWidthDoubleSpinBox.setProperty("showClearButton", False)
        self.mPaperWidthDoubleSpinBox.setObjectName(
            _fromUtf8("mPaperWidthDoubleSpinBox"))
        self.horizontalLayout_2.addWidget(self.mPaperWidthDoubleSpinBox)
        self.mPaperWidthDDBtn = QgsDataDefinedButton(self.groupBox)
        self.mPaperWidthDDBtn.setObjectName(_fromUtf8("mPaperWidthDDBtn"))
        self.horizontalLayout_2.addWidget(self.mPaperWidthDDBtn)
        self.gridLayout.addLayout(self.horizontalLayout_2, 1, 1, 1, 1)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.mPaperSizeComboBox = QtGui.QComboBox(self.groupBox)
        self.mPaperSizeComboBox.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mPaperSizeComboBox.sizePolicy().hasHeightForWidth())
        self.mPaperSizeComboBox.setSizePolicy(sizePolicy)
        self.mPaperSizeComboBox.setObjectName(_fromUtf8("mPaperSizeComboBox"))
        self.horizontalLayout.addWidget(self.mPaperSizeComboBox)
        self.mPaperSizeDDBtn = QgsDataDefinedButton(self.groupBox)
        self.mPaperSizeDDBtn.setObjectName(_fromUtf8("mPaperSizeDDBtn"))
        self.horizontalLayout.addWidget(self.mPaperSizeDDBtn)
        self.gridLayout.addLayout(self.horizontalLayout, 0, 1, 1, 1)
        self.label = QtGui.QLabel(self.groupBox)
        self.label.setWordWrap(True)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 1, 0, 1, 1)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.mPaperOrientationComboBox = QtGui.QComboBox(self.groupBox)
        self.mPaperOrientationComboBox.setEnabled(True)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mPaperOrientationComboBox.sizePolicy().hasHeightForWidth())
        self.mPaperOrientationComboBox.setSizePolicy(sizePolicy)
        self.mPaperOrientationComboBox.setObjectName(
            _fromUtf8("mPaperOrientationComboBox"))
        self.horizontalLayout_5.addWidget(self.mPaperOrientationComboBox)
        self.mPaperOrientationDDBtn = QgsDataDefinedButton(self.groupBox)
        self.mPaperOrientationDDBtn.setObjectName(
            _fromUtf8("mPaperOrientationDDBtn"))
        self.horizontalLayout_5.addWidget(self.mPaperOrientationDDBtn)
        self.gridLayout.addLayout(self.horizontalLayout_5, 4, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.groupBox)
        self.groupBox_5 = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.groupBox_5.setObjectName(_fromUtf8("groupBox_5"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.groupBox_5)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.gridLayout_5 = QtGui.QGridLayout()
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.label_4 = QtGui.QLabel(self.groupBox_5)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout_5.addWidget(self.label_4, 0, 1, 1, 1)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem, 0, 0, 1, 1)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem1, 0, 3, 1, 1)
        self.mTopMarginSpinBox = QgsDoubleSpinBox(self.groupBox_5)
        self.mTopMarginSpinBox.setSingleStep(0.1)
        self.mTopMarginSpinBox.setObjectName(_fromUtf8("mTopMarginSpinBox"))
        self.gridLayout_5.addWidget(self.mTopMarginSpinBox, 0, 2, 1, 1)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.label_5 = QtGui.QLabel(self.groupBox_5)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.horizontalLayout_7.addWidget(self.label_5)
        self.mLeftMarginSpinBox = QgsDoubleSpinBox(self.groupBox_5)
        self.mLeftMarginSpinBox.setSingleStep(0.1)
        self.mLeftMarginSpinBox.setObjectName(_fromUtf8("mLeftMarginSpinBox"))
        self.horizontalLayout_7.addWidget(self.mLeftMarginSpinBox)
        self.label_11 = QtGui.QLabel(self.groupBox_5)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.horizontalLayout_7.addWidget(self.label_11)
        self.mRightMarginSpinBox = QgsDoubleSpinBox(self.groupBox_5)
        self.mRightMarginSpinBox.setSingleStep(0.1)
        self.mRightMarginSpinBox.setObjectName(
            _fromUtf8("mRightMarginSpinBox"))
        self.horizontalLayout_7.addWidget(self.mRightMarginSpinBox)
        self.gridLayout_5.addLayout(self.horizontalLayout_7, 1, 0, 1, 4)
        self.label_12 = QtGui.QLabel(self.groupBox_5)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.gridLayout_5.addWidget(self.label_12, 2, 1, 1, 1)
        self.mBottomMarginSpinBox = QgsDoubleSpinBox(self.groupBox_5)
        self.mBottomMarginSpinBox.setSingleStep(0.1)
        self.mBottomMarginSpinBox.setObjectName(
            _fromUtf8("mBottomMarginSpinBox"))
        self.gridLayout_5.addWidget(self.mBottomMarginSpinBox, 2, 2, 1, 1)
        self.mResizePageButton = QtGui.QPushButton(self.groupBox_5)
        self.mResizePageButton.setObjectName(_fromUtf8("mResizePageButton"))
        self.gridLayout_5.addWidget(self.mResizePageButton, 3, 1, 1, 2)
        self.verticalLayout_5.addLayout(self.gridLayout_5)
        self.verticalLayout_2.addWidget(self.groupBox_5)
        self.groupBox_4 = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.groupBox_4.setObjectName(_fromUtf8("groupBox_4"))
        self.gridLayout_4 = QtGui.QGridLayout(self.groupBox_4)
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.mNumPagesLabel = QtGui.QLabel(self.groupBox_4)
        self.mNumPagesLabel.setWordWrap(True)
        self.mNumPagesLabel.setObjectName(_fromUtf8("mNumPagesLabel"))
        self.gridLayout_4.addWidget(self.mNumPagesLabel, 0, 0, 1, 1)
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.mNumPagesSpinBox = QgsSpinBox(self.groupBox_4)
        self.mNumPagesSpinBox.setMinimum(1)
        self.mNumPagesSpinBox.setProperty("showClearButton", False)
        self.mNumPagesSpinBox.setObjectName(_fromUtf8("mNumPagesSpinBox"))
        self.horizontalLayout_4.addWidget(self.mNumPagesSpinBox)
        self.mNumPagesDDBtn = QgsDataDefinedButton(self.groupBox_4)
        self.mNumPagesDDBtn.setObjectName(_fromUtf8("mNumPagesDDBtn"))
        self.horizontalLayout_4.addWidget(self.mNumPagesDDBtn)
        self.gridLayout_4.addLayout(self.horizontalLayout_4, 0, 1, 1, 1)
        self.label_10 = QtGui.QLabel(self.groupBox_4)
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.gridLayout_4.addWidget(self.label_10, 1, 0, 1, 1)
        self.mPageStyleButton = QtGui.QPushButton(self.groupBox_4)
        self.mPageStyleButton.setObjectName(_fromUtf8("mPageStyleButton"))
        self.gridLayout_4.addWidget(self.mPageStyleButton, 1, 1, 1, 1)
        self.verticalLayout_2.addWidget(self.groupBox_4)
        self.groupBox_3 = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.groupBox_3.setObjectName(_fromUtf8("groupBox_3"))
        self.gridLayout_3 = QtGui.QGridLayout(self.groupBox_3)
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.mResolutionSpinBox = QgsSpinBox(self.groupBox_3)
        self.mResolutionSpinBox.setPrefix(_fromUtf8(""))
        self.mResolutionSpinBox.setMaximum(3000)
        self.mResolutionSpinBox.setProperty("showClearButton", False)
        self.mResolutionSpinBox.setObjectName(_fromUtf8("mResolutionSpinBox"))
        self.gridLayout_3.addWidget(self.mResolutionSpinBox, 1, 1, 1, 1)
        self.mPrintAsRasterCheckBox = QtGui.QCheckBox(self.groupBox_3)
        self.mPrintAsRasterCheckBox.setCheckable(True)
        self.mPrintAsRasterCheckBox.setChecked(False)
        self.mPrintAsRasterCheckBox.setObjectName(
            _fromUtf8("mPrintAsRasterCheckBox"))
        self.gridLayout_3.addWidget(self.mPrintAsRasterCheckBox, 2, 0, 1, 1)
        self.mWorldFileMapComboBox = QtGui.QComboBox(self.groupBox_3)
        self.mWorldFileMapComboBox.setEnabled(False)
        self.mWorldFileMapComboBox.setEditable(False)
        self.mWorldFileMapComboBox.setObjectName(
            _fromUtf8("mWorldFileMapComboBox"))
        self.gridLayout_3.addWidget(self.mWorldFileMapComboBox, 3, 1, 1, 1)
        self.mGenerateWorldFileCheckBox = QtGui.QCheckBox(self.groupBox_3)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,
                                       QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mGenerateWorldFileCheckBox.sizePolicy().hasHeightForWidth())
        self.mGenerateWorldFileCheckBox.setSizePolicy(sizePolicy)
        self.mGenerateWorldFileCheckBox.setObjectName(
            _fromUtf8("mGenerateWorldFileCheckBox"))
        self.gridLayout_3.addWidget(self.mGenerateWorldFileCheckBox, 3, 0, 1,
                                    1)
        self.label_9 = QtGui.QLabel(self.groupBox_3)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.gridLayout_3.addWidget(self.label_9, 1, 0, 1, 1)
        self.verticalLayout_2.addWidget(self.groupBox_3)
        self.mSnapToGridGroupCheckBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mSnapToGridGroupCheckBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mSnapToGridGroupCheckBox.setCheckable(False)
        self.mSnapToGridGroupCheckBox.setChecked(False)
        self.mSnapToGridGroupCheckBox.setProperty("syncGroup",
                                                  _fromUtf8("composeritem"))
        self.mSnapToGridGroupCheckBox.setProperty("collapsed", True)
        self.mSnapToGridGroupCheckBox.setObjectName(
            _fromUtf8("mSnapToGridGroupCheckBox"))
        self.gridLayout_2 = QtGui.QGridLayout(self.mSnapToGridGroupCheckBox)
        self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
        self.label_8 = QtGui.QLabel(self.mSnapToGridGroupCheckBox)
        self.label_8.setWordWrap(True)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.gridLayout_2.addWidget(self.label_8, 0, 0, 1, 1)
        self.mGridResolutionSpinBox = QgsDoubleSpinBox(
            self.mSnapToGridGroupCheckBox)
        self.mGridResolutionSpinBox.setPrefix(_fromUtf8(""))
        self.mGridResolutionSpinBox.setMinimum(0.5)
        self.mGridResolutionSpinBox.setMaximum(9999.0)
        self.mGridResolutionSpinBox.setProperty("showClearButton", False)
        self.mGridResolutionSpinBox.setObjectName(
            _fromUtf8("mGridResolutionSpinBox"))
        self.gridLayout_2.addWidget(self.mGridResolutionSpinBox, 0, 1, 1, 1)
        self.label_6 = QtGui.QLabel(self.mSnapToGridGroupCheckBox)
        self.label_6.setWordWrap(True)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.gridLayout_2.addWidget(self.label_6, 1, 0, 1, 1)
        self.verticalLayout_3 = QtGui.QVBoxLayout()
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.mOffsetXSpinBox = QgsDoubleSpinBox(self.mSnapToGridGroupCheckBox)
        self.mOffsetXSpinBox.setMaximum(9999.0)
        self.mOffsetXSpinBox.setObjectName(_fromUtf8("mOffsetXSpinBox"))
        self.verticalLayout_3.addWidget(self.mOffsetXSpinBox)
        self.mOffsetYSpinBox = QgsDoubleSpinBox(self.mSnapToGridGroupCheckBox)
        self.mOffsetYSpinBox.setMaximum(9999.0)
        self.mOffsetYSpinBox.setObjectName(_fromUtf8("mOffsetYSpinBox"))
        self.verticalLayout_3.addWidget(self.mOffsetYSpinBox)
        self.gridLayout_2.addLayout(self.verticalLayout_3, 1, 1, 1, 1)
        self.label_7 = QtGui.QLabel(self.mSnapToGridGroupCheckBox)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.gridLayout_2.addWidget(self.label_7, 2, 0, 1, 1)
        self.mSnapToleranceSpinBox = QgsSpinBox(self.mSnapToGridGroupCheckBox)
        self.mSnapToleranceSpinBox.setMaximum(200)
        self.mSnapToleranceSpinBox.setProperty("showClearButton", False)
        self.mSnapToleranceSpinBox.setObjectName(
            _fromUtf8("mSnapToleranceSpinBox"))
        self.gridLayout_2.addWidget(self.mSnapToleranceSpinBox, 2, 1, 1, 1)
        self.gridLayout_2.setColumnStretch(1, 1)
        self.verticalLayout_2.addWidget(self.mSnapToGridGroupCheckBox)
        self.groupBox_2 = QgsCollapsibleGroupBox(self.scrollAreaWidgetContents)
        self.groupBox_2.setObjectName(_fromUtf8("groupBox_2"))
        self.verticalLayout_4 = QtGui.QVBoxLayout(self.groupBox_2)
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.mVariableEditor = QgsVariableEditorWidget(self.groupBox_2)
        self.mVariableEditor.setMinimumSize(QtCore.QSize(0, 200))
        self.mVariableEditor.setObjectName(_fromUtf8("mVariableEditor"))
        self.verticalLayout_4.addWidget(self.mVariableEditor)
        self.verticalLayout_2.addWidget(self.groupBox_2)
        spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                        QtGui.QSizePolicy.Expanding)
        self.verticalLayout_2.addItem(spacerItem2)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout.addWidget(self.scrollArea)
        self.textLabel7.setBuddy(self.mPaperOrientationComboBox)
        self.textLabel3.setBuddy(self.mPaperSizeComboBox)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.scrollArea, self.groupBox)
        self.setTabOrder(self.groupBox, self.mPaperSizeComboBox)
        self.setTabOrder(self.mPaperSizeComboBox, self.mPaperSizeDDBtn)
        self.setTabOrder(self.mPaperSizeDDBtn, self.mPaperWidthDoubleSpinBox)
        self.setTabOrder(self.mPaperWidthDoubleSpinBox, self.mPaperWidthDDBtn)
        self.setTabOrder(self.mPaperWidthDDBtn, self.mPaperHeightDoubleSpinBox)
        self.setTabOrder(self.mPaperHeightDoubleSpinBox,
                         self.mPaperHeightDDBtn)
        self.setTabOrder(self.mPaperHeightDDBtn, self.mPaperUnitsComboBox)
        self.setTabOrder(self.mPaperUnitsComboBox,
                         self.mPaperOrientationComboBox)
        self.setTabOrder(self.mPaperOrientationComboBox,
                         self.mPaperOrientationDDBtn)
        self.setTabOrder(self.mPaperOrientationDDBtn, self.mTopMarginSpinBox)
        self.setTabOrder(self.mTopMarginSpinBox, self.mLeftMarginSpinBox)
        self.setTabOrder(self.mLeftMarginSpinBox, self.mRightMarginSpinBox)
        self.setTabOrder(self.mRightMarginSpinBox, self.mBottomMarginSpinBox)
        self.setTabOrder(self.mBottomMarginSpinBox, self.mResizePageButton)
        self.setTabOrder(self.mResizePageButton, self.mNumPagesSpinBox)
        self.setTabOrder(self.mNumPagesSpinBox, self.mNumPagesDDBtn)
        self.setTabOrder(self.mNumPagesDDBtn, self.mPageStyleButton)
        self.setTabOrder(self.mPageStyleButton, self.mResolutionSpinBox)
        self.setTabOrder(self.mResolutionSpinBox, self.mPrintAsRasterCheckBox)
        self.setTabOrder(self.mPrintAsRasterCheckBox,
                         self.mGenerateWorldFileCheckBox)
        self.setTabOrder(self.mGenerateWorldFileCheckBox,
                         self.mWorldFileMapComboBox)
        self.setTabOrder(self.mWorldFileMapComboBox,
                         self.mSnapToGridGroupCheckBox)
        self.setTabOrder(self.mSnapToGridGroupCheckBox,
                         self.mGridResolutionSpinBox)
        self.setTabOrder(self.mGridResolutionSpinBox, self.mOffsetXSpinBox)
        self.setTabOrder(self.mOffsetXSpinBox, self.mOffsetYSpinBox)
        self.setTabOrder(self.mOffsetYSpinBox, self.mSnapToleranceSpinBox)

        self.groupBox_2.setVisible(False)
        self.groupBox.setVisible(False)
        self.groupBox_5.setVisible(False)
Esempio n. 16
0
 def createWidget(self):
     if self.dialogType == DIALOG_STANDARD:
         return self._panel()
     else:
         w = QgsDoubleSpinBox()
         w.setShowClearButton(False)
         w.setMinimum(0)
         w.setMaximum(99999999999)
         w.setDecimals(6)
         w.setToolTip(self.tr('Resolution of each pixel in output raster, in layer units'))
         return w
Esempio n. 17
0
    def __init__(self, parent):
        QtGui.QWidget.__init__(self, parent)
        self.setObjectName(_fromUtf8("self"))
        self.resize(334, 383)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setMargin(0)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.label_3 = QtGui.QLabel(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_3.sizePolicy().hasHeightForWidth())
        self.label_3.setSizePolicy(sizePolicy)
        self.label_3.setStyleSheet(_fromUtf8("padding: 2px; font-weight: bold; background-color: rgb(200, 200, 200);"))
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.verticalLayout.addWidget(self.label_3)
        self.scrollArea = QtGui.QScrollArea(self)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 332, 360))
        self.scrollAreaWidgetContents.setObjectName(_fromUtf8("scrollAreaWidgetContents"))
        self.mainLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.mainLayout.setObjectName(_fromUtf8("mainLayout"))
        self.groupBox = QgsCollapsibleGroupBoxBasic(self.scrollAreaWidgetContents)
        self.groupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.groupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.groupBox.setProperty("collapsed", False)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.mLineStyleButton = QtGui.QPushButton(self.groupBox)
        self.mLineStyleButton.setObjectName(_fromUtf8("mLineStyleButton"))
        self.verticalLayout_2.addWidget(self.mLineStyleButton)
        self.mainLayout.addWidget(self.groupBox)
        self.mArrowMarkersGroupBox = QgsCollapsibleGroupBoxBasic(self.scrollAreaWidgetContents)
        self.mArrowMarkersGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mArrowMarkersGroupBox.setProperty("syncGroup", _fromUtf8("composeritem"))
        self.mArrowMarkersGroupBox.setProperty("collapsed", False)
        self.mArrowMarkersGroupBox.setObjectName(_fromUtf8("mArrowMarkersGroupBox"))
        self.gridLayout = QtGui.QGridLayout(self.mArrowMarkersGroupBox)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.mDefaultMarkerRadioButton = QtGui.QRadioButton(self.mArrowMarkersGroupBox)
        self.mDefaultMarkerRadioButton.setObjectName(_fromUtf8("mDefaultMarkerRadioButton"))
        self.horizontalLayout_3.addWidget(self.mDefaultMarkerRadioButton)
        self.mNoMarkerRadioButton = QtGui.QRadioButton(self.mArrowMarkersGroupBox)
        self.mNoMarkerRadioButton.setObjectName(_fromUtf8("mNoMarkerRadioButton"))
        self.horizontalLayout_3.addWidget(self.mNoMarkerRadioButton)
        self.mSvgMarkerRadioButton = QtGui.QRadioButton(self.mArrowMarkersGroupBox)
        self.mSvgMarkerRadioButton.setObjectName(_fromUtf8("mSvgMarkerRadioButton"))
        self.horizontalLayout_3.addWidget(self.mSvgMarkerRadioButton)
        self.gridLayout.addLayout(self.horizontalLayout_3, 0, 0, 1, 2)
        self.label_5 = QtGui.QLabel(self.mArrowMarkersGroupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.gridLayout.addWidget(self.label_5, 1, 0, 1, 1)
        self.mArrowHeadOutlineColorButton = QgsColorButtonV2(self.mArrowMarkersGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.mArrowHeadOutlineColorButton.sizePolicy().hasHeightForWidth())
        self.mArrowHeadOutlineColorButton.setSizePolicy(sizePolicy)
        self.mArrowHeadOutlineColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mArrowHeadOutlineColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mArrowHeadOutlineColorButton.setText(_fromUtf8(""))
        self.mArrowHeadOutlineColorButton.setObjectName(_fromUtf8("mArrowHeadOutlineColorButton"))
        self.gridLayout.addWidget(self.mArrowHeadOutlineColorButton, 1, 1, 1, 1)
        self.label_4 = QtGui.QLabel(self.mArrowMarkersGroupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)
        self.mArrowHeadFillColorButton = QgsColorButtonV2(self.mArrowMarkersGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.mArrowHeadFillColorButton.sizePolicy().hasHeightForWidth())
        self.mArrowHeadFillColorButton.setSizePolicy(sizePolicy)
        self.mArrowHeadFillColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mArrowHeadFillColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mArrowHeadFillColorButton.setText(_fromUtf8(""))
        self.mArrowHeadFillColorButton.setObjectName(_fromUtf8("mArrowHeadFillColorButton"))
        self.gridLayout.addWidget(self.mArrowHeadFillColorButton, 2, 1, 1, 1)
        self.label = QtGui.QLabel(self.mArrowMarkersGroupBox)
        self.label.setObjectName(_fromUtf8("label"))
        self.gridLayout.addWidget(self.label, 3, 0, 1, 1)
        self.mOutlineWidthSpinBox = QgsDoubleSpinBox(self.mArrowMarkersGroupBox)
        self.mOutlineWidthSpinBox.setPrefix(_fromUtf8(""))
        self.mOutlineWidthSpinBox.setShowClearButton(False)
        self.mOutlineWidthSpinBox.setObjectName(_fromUtf8("mOutlineWidthSpinBox"))
        self.gridLayout.addWidget(self.mOutlineWidthSpinBox, 3, 1, 1, 1)
        self.label_2 = QtGui.QLabel(self.mArrowMarkersGroupBox)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.gridLayout.addWidget(self.label_2, 4, 0, 1, 1)
        self.mArrowHeadWidthSpinBox = QgsDoubleSpinBox(self.mArrowMarkersGroupBox)
        self.mArrowHeadWidthSpinBox.setPrefix(_fromUtf8(""))
        self.mArrowHeadWidthSpinBox.setShowClearButton(False)
        self.mArrowHeadWidthSpinBox.setObjectName(_fromUtf8("mArrowHeadWidthSpinBox"))
        self.gridLayout.addWidget(self.mArrowHeadWidthSpinBox, 4, 1, 1, 1)
        self.mStartMarkerLabel = QtGui.QLabel(self.mArrowMarkersGroupBox)
        self.mStartMarkerLabel.setObjectName(_fromUtf8("mStartMarkerLabel"))
        self.gridLayout.addWidget(self.mStartMarkerLabel, 5, 0, 1, 1)
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.mStartMarkerLineEdit = QtGui.QLineEdit(self.mArrowMarkersGroupBox)
        self.mStartMarkerLineEdit.setObjectName(_fromUtf8("mStartMarkerLineEdit"))
        self.horizontalLayout.addWidget(self.mStartMarkerLineEdit)
        self.mStartMarkerToolButton = QtGui.QToolButton(self.mArrowMarkersGroupBox)
        self.mStartMarkerToolButton.setObjectName(_fromUtf8("mStartMarkerToolButton"))
        self.horizontalLayout.addWidget(self.mStartMarkerToolButton)
        self.gridLayout.addLayout(self.horizontalLayout, 5, 1, 1, 1)
        self.mEndMarkerLabel = QtGui.QLabel(self.mArrowMarkersGroupBox)
        self.mEndMarkerLabel.setObjectName(_fromUtf8("mEndMarkerLabel"))
        self.gridLayout.addWidget(self.mEndMarkerLabel, 6, 0, 1, 1)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.mEndMarkerLineEdit = QtGui.QLineEdit(self.mArrowMarkersGroupBox)
        self.mEndMarkerLineEdit.setObjectName(_fromUtf8("mEndMarkerLineEdit"))
        self.horizontalLayout_2.addWidget(self.mEndMarkerLineEdit)
        self.mEndMarkerToolButton = QtGui.QToolButton(self.mArrowMarkersGroupBox)
        self.mEndMarkerToolButton.setObjectName(_fromUtf8("mEndMarkerToolButton"))
        self.horizontalLayout_2.addWidget(self.mEndMarkerToolButton)
        self.gridLayout.addLayout(self.horizontalLayout_2, 6, 1, 1, 1)
        self.mainLayout.addWidget(self.mArrowMarkersGroupBox)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout.addWidget(self.scrollArea)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.scrollArea, self.groupBox)
        self.setTabOrder(self.groupBox, self.mLineStyleButton)
        self.setTabOrder(self.mLineStyleButton, self.mArrowMarkersGroupBox)
        self.setTabOrder(self.mArrowMarkersGroupBox, self.mDefaultMarkerRadioButton)
        self.setTabOrder(self.mDefaultMarkerRadioButton, self.mNoMarkerRadioButton)
        self.setTabOrder(self.mNoMarkerRadioButton, self.mSvgMarkerRadioButton)
        self.setTabOrder(self.mSvgMarkerRadioButton, self.mArrowHeadOutlineColorButton)
        self.setTabOrder(self.mArrowHeadOutlineColorButton, self.mArrowHeadFillColorButton)
        self.setTabOrder(self.mArrowHeadFillColorButton, self.mOutlineWidthSpinBox)
        self.setTabOrder(self.mOutlineWidthSpinBox, self.mArrowHeadWidthSpinBox)
        self.setTabOrder(self.mArrowHeadWidthSpinBox, self.mStartMarkerLineEdit)
        self.setTabOrder(self.mStartMarkerLineEdit, self.mStartMarkerToolButton)
        self.setTabOrder(self.mStartMarkerToolButton, self.mEndMarkerLineEdit)
        self.setTabOrder(self.mEndMarkerLineEdit, self.mEndMarkerToolButton)
    def __init__(self, parent):
        self.setObjectName(_fromUtf8("self"))
        self.resize(393, 995)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sizePolicy().hasHeightForWidth())
        self.setSizePolicy(sizePolicy)
        self.verticalLayout = QtGui.QVBoxLayout(self)
        self.verticalLayout.setSpacing(0)
        self.verticalLayout.setMargin(0)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.label_11 = QtGui.QLabel(self)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.label_11.sizePolicy().hasHeightForWidth())
        self.label_11.setSizePolicy(sizePolicy)
        self.label_11.setStyleSheet(
            _fromUtf8(
                "padding: 2px; font-weight: bold; background-color: rgb(200, 200, 200);"
            ))
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.verticalLayout.addWidget(self.label_11)
        self.scrollArea = QtGui.QScrollArea(self)
        self.scrollArea.setFrameShape(QtGui.QFrame.StyledPanel)
        self.scrollArea.setWidgetResizable(True)
        self.scrollArea.setObjectName(_fromUtf8("scrollArea"))
        self.scrollAreaWidgetContents = QtGui.QWidget()
        self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(
            0, 0, 375, 1478))
        self.scrollAreaWidgetContents.setObjectName(
            _fromUtf8("scrollAreaWidgetContents"))
        self.mainLayout = QtGui.QVBoxLayout(self.scrollAreaWidgetContents)
        self.mainLayout.setObjectName(_fromUtf8("mainLayout"))
        self.mMainPropertiesColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mMainPropertiesColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mMainPropertiesColGroupBox.setProperty("syncGroup",
                                                    _fromUtf8("composeritem"))
        self.mMainPropertiesColGroupBox.setProperty("collapsed", False)
        self.mMainPropertiesColGroupBox.setObjectName(
            _fromUtf8("mMainPropertiesColGroupBox"))
        self.formLayout = QtGui.QFormLayout(self.mMainPropertiesColGroupBox)
        self.formLayout.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout.setLabelAlignment(QtCore.Qt.AlignLeading
                                          | QtCore.Qt.AlignLeft
                                          | QtCore.Qt.AlignVCenter)
        self.formLayout.setObjectName(_fromUtf8("formLayout"))
        self.mTitleLabel = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.mTitleLabel.setObjectName(_fromUtf8("mTitleLabel"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.LabelRole,
                                  self.mTitleLabel)
        self.mTitleLineEdit = QtGui.QLineEdit(self.mMainPropertiesColGroupBox)
        self.mTitleLineEdit.setObjectName(_fromUtf8("mTitleLineEdit"))
        self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole,
                                  self.mTitleLineEdit)
        self.mMapLabel = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.mMapLabel.setObjectName(_fromUtf8("mMapLabel"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.LabelRole,
                                  self.mMapLabel)
        self.mMapComboBox = QtGui.QComboBox(self.mMainPropertiesColGroupBox)
        self.mMapComboBox.setObjectName(_fromUtf8("mMapComboBox"))
        self.formLayout.setWidget(2, QtGui.QFormLayout.FieldRole,
                                  self.mMapComboBox)
        self.label = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.label.setObjectName(_fromUtf8("label"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.LabelRole, self.label)
        self.mWrapCharLineEdit = QtGui.QLineEdit(
            self.mMainPropertiesColGroupBox)
        self.mWrapCharLineEdit.setFrame(True)
        self.mWrapCharLineEdit.setObjectName(_fromUtf8("mWrapCharLineEdit"))
        self.formLayout.setWidget(3, QtGui.QFormLayout.FieldRole,
                                  self.mWrapCharLineEdit)
        self.label_15 = QtGui.QLabel(self.mMainPropertiesColGroupBox)
        self.label_15.setObjectName(_fromUtf8("label_15"))
        self.formLayout.setWidget(1, QtGui.QFormLayout.LabelRole,
                                  self.label_15)
        self.mTitleAlignCombo = QtGui.QComboBox(
            self.mMainPropertiesColGroupBox)
        self.mTitleAlignCombo.setObjectName(_fromUtf8("mTitleAlignCombo"))
        self.mTitleAlignCombo.addItem(_fromUtf8(""))
        self.mTitleAlignCombo.addItem(_fromUtf8(""))
        self.mTitleAlignCombo.addItem(_fromUtf8(""))
        self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole,
                                  self.mTitleAlignCombo)
        self.mainLayout.addWidget(self.mMainPropertiesColGroupBox)
        self.mLegendItemColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mLegendItemColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mLegendItemColGroupBox.setProperty("syncGroup",
                                                _fromUtf8("composeritem"))
        self.mLegendItemColGroupBox.setProperty("collapsed", False)
        self.mLegendItemColGroupBox.setObjectName(
            _fromUtf8("mLegendItemColGroupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.mLegendItemColGroupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.mCheckBoxAutoUpdate = QtGui.QCheckBox(self.mLegendItemColGroupBox)
        self.mCheckBoxAutoUpdate.setChecked(True)
        self.mCheckBoxAutoUpdate.setObjectName(
            _fromUtf8("mCheckBoxAutoUpdate"))
        self.horizontalLayout.addWidget(self.mCheckBoxAutoUpdate)
        spacerItem = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.horizontalLayout.addItem(spacerItem)
        self.mUpdateAllPushButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        self.mUpdateAllPushButton.setObjectName(
            _fromUtf8("mUpdateAllPushButton"))
        self.horizontalLayout.addWidget(self.mUpdateAllPushButton)
        self.verticalLayout_2.addLayout(self.horizontalLayout)
        self.mItemTreeView = QgsLayerTreeView(self.mLegendItemColGroupBox)
        self.mItemTreeView.setMinimumSize(QtCore.QSize(0, 250))
        self.mItemTreeView.setSelectionMode(
            QtGui.QAbstractItemView.ContiguousSelection)
        self.mItemTreeView.setHeaderHidden(True)
        self.mItemTreeView.setObjectName(_fromUtf8("mItemTreeView"))
        self.mItemTreeView.header().setVisible(False)
        self.verticalLayout_2.addWidget(self.mItemTreeView)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setSpacing(3)
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.mMoveDownToolButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mMoveDownToolButton.sizePolicy().hasHeightForWidth())
        self.mMoveDownToolButton.setSizePolicy(sizePolicy)
        self.mMoveDownToolButton.setText(_fromUtf8(""))
        icon = QtGui.QIcon()
        icon.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionArrowDown.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mMoveDownToolButton.setIcon(icon)
        self.mMoveDownToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mMoveDownToolButton.setObjectName(
            _fromUtf8("mMoveDownToolButton"))
        self.horizontalLayout_2.addWidget(self.mMoveDownToolButton)
        self.mMoveUpToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mMoveUpToolButton.setText(_fromUtf8(""))
        icon1 = QtGui.QIcon()
        icon1.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionArrowUp.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mMoveUpToolButton.setIcon(icon1)
        self.mMoveUpToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mMoveUpToolButton.setObjectName(_fromUtf8("mMoveUpToolButton"))
        self.horizontalLayout_2.addWidget(self.mMoveUpToolButton)
        self.mAddGroupToolButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        icon2 = QtGui.QIcon()
        icon2.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionAddGroup.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mAddGroupToolButton.setIcon(icon2)
        self.mAddGroupToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mAddGroupToolButton.setObjectName(
            _fromUtf8("mAddGroupToolButton"))
        self.horizontalLayout_2.addWidget(self.mAddGroupToolButton)
        self.mAddToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mAddToolButton.setText(_fromUtf8(""))
        icon3 = QtGui.QIcon()
        icon3.addPixmap(
            QtGui.QPixmap(
                _fromUtf8("Resource/images/themes/default/symbologyAdd.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mAddToolButton.setIcon(icon3)
        self.mAddToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mAddToolButton.setObjectName(_fromUtf8("mAddToolButton"))
        self.horizontalLayout_2.addWidget(self.mAddToolButton)
        self.mRemoveToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mRemoveToolButton.setText(_fromUtf8(""))
        icon4 = QtGui.QIcon()
        icon4.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/symbologyRemove.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mRemoveToolButton.setIcon(icon4)
        self.mRemoveToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mRemoveToolButton.setObjectName(_fromUtf8("mRemoveToolButton"))
        self.horizontalLayout_2.addWidget(self.mRemoveToolButton)
        self.mEditPushButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mEditPushButton.setText(_fromUtf8(""))
        icon5 = QtGui.QIcon()
        icon5.addPixmap(
            QtGui.QPixmap(
                _fromUtf8("Resource/images/themes/default/symbologyEdit.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mEditPushButton.setIcon(icon5)
        self.mEditPushButton.setIconSize(QtCore.QSize(20, 20))
        self.mEditPushButton.setObjectName(_fromUtf8("mEditPushButton"))
        self.horizontalLayout_2.addWidget(self.mEditPushButton)
        self.mCountToolButton = QtGui.QToolButton(self.mLegendItemColGroupBox)
        self.mCountToolButton.setEnabled(False)
        self.mCountToolButton.setText(_fromUtf8(""))
        icon6 = QtGui.QIcon()
        icon6.addPixmap(
            QtGui.QPixmap(
                _fromUtf8("Resource/images/themes/default/mActionSum.png")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mCountToolButton.setIcon(icon6)
        self.mCountToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mCountToolButton.setCheckable(True)
        self.mCountToolButton.setObjectName(_fromUtf8("mCountToolButton"))
        self.horizontalLayout_2.addWidget(self.mCountToolButton)
        self.mFilterByMapToolButton = QtGui.QToolButton(
            self.mLegendItemColGroupBox)
        icon7 = QtGui.QIcon()
        icon7.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mActionFilter2.svg")),
            QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mFilterByMapToolButton.setIcon(icon7)
        self.mFilterByMapToolButton.setIconSize(QtCore.QSize(20, 20))
        self.mFilterByMapToolButton.setCheckable(True)
        self.mFilterByMapToolButton.setObjectName(
            _fromUtf8("mFilterByMapToolButton"))
        self.horizontalLayout_2.addWidget(self.mFilterByMapToolButton)
        self.mExpressionFilterButton = QgsLegendFilterButton(
            self.mLegendItemColGroupBox)
        self.mExpressionFilterButton.setText(_fromUtf8(""))
        icon8 = QtGui.QIcon()
        icon8.addPixmap(
            QtGui.QPixmap(
                _fromUtf8(
                    "Resource/images/themes/default/mIconExpressionFilter.svg")
            ), QtGui.QIcon.Normal, QtGui.QIcon.Off)
        self.mExpressionFilterButton.setIcon(icon8)
        self.mExpressionFilterButton.setIconSize(QtCore.QSize(20, 20))
        self.mExpressionFilterButton.setObjectName(
            _fromUtf8("mExpressionFilterButton"))
        self.horizontalLayout_2.addWidget(self.mExpressionFilterButton)
        spacerItem1 = QtGui.QSpacerItem(0, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem1)
        self.verticalLayout_2.addLayout(self.horizontalLayout_2)
        self.mFilterLegendByAtlasCheckBox = QtGui.QCheckBox(
            self.mLegendItemColGroupBox)
        self.mFilterLegendByAtlasCheckBox.setObjectName(
            _fromUtf8("mFilterLegendByAtlasCheckBox"))
        self.verticalLayout_2.addWidget(self.mFilterLegendByAtlasCheckBox)
        self.mainLayout.addWidget(self.mLegendItemColGroupBox)
        self.mFontsColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mFontsColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mFontsColGroupBox.setProperty("syncGroup",
                                           _fromUtf8("composeritem"))
        self.mFontsColGroupBox.setProperty("collapsed", True)
        self.mFontsColGroupBox.setObjectName(_fromUtf8("mFontsColGroupBox"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.mFontsColGroupBox)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.mTitleFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mTitleFontButton.sizePolicy().hasHeightForWidth())
        self.mTitleFontButton.setSizePolicy(sizePolicy)
        self.mTitleFontButton.setObjectName(_fromUtf8("mTitleFontButton"))
        self.verticalLayout_3.addWidget(self.mTitleFontButton)
        self.mLayerFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        self.mLayerFontButton.setObjectName(_fromUtf8("mLayerFontButton"))
        self.verticalLayout_3.addWidget(self.mLayerFontButton)
        self.mGroupFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        self.mGroupFontButton.setObjectName(_fromUtf8("mGroupFontButton"))
        self.verticalLayout_3.addWidget(self.mGroupFontButton)
        self.mItemFontButton = QtGui.QPushButton(self.mFontsColGroupBox)
        self.mItemFontButton.setObjectName(_fromUtf8("mItemFontButton"))
        self.verticalLayout_3.addWidget(self.mItemFontButton)
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.label_16 = QtGui.QLabel(self.mFontsColGroupBox)
        self.label_16.setObjectName(_fromUtf8("label_16"))
        self.horizontalLayout_3.addWidget(self.label_16)
        self.mFontColorButton = QgsColorButtonV2(self.mFontsColGroupBox)
        self.mFontColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mFontColorButton.setMaximumSize(QtCore.QSize(120, 16777215))
        self.mFontColorButton.setText(_fromUtf8(""))
        self.mFontColorButton.setObjectName(_fromUtf8("mFontColorButton"))
        self.horizontalLayout_3.addWidget(self.mFontColorButton)
        spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_3.addItem(spacerItem2)
        self.verticalLayout_3.addLayout(self.horizontalLayout_3)
        self.mainLayout.addWidget(self.mFontsColGroupBox)
        self.mColumnsColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mColumnsColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mColumnsColGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mColumnsColGroupBox.setProperty("collapsed", True)
        self.mColumnsColGroupBox.setObjectName(
            _fromUtf8("mColumnsColGroupBox"))
        self.formLayout_2 = QtGui.QFormLayout(self.mColumnsColGroupBox)
        self.formLayout_2.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_2.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_2.setObjectName(_fromUtf8("formLayout_2"))
        self.label_2 = QtGui.QLabel(self.mColumnsColGroupBox)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_2)
        self.mColumnCountSpinBox = QgsSpinBox(self.mColumnsColGroupBox)
        self.mColumnCountSpinBox.setPrefix(_fromUtf8(""))
        self.mColumnCountSpinBox.setMinimum(1)
        self.mColumnCountSpinBox.setMaximum(1000)
        self.mColumnCountSpinBox.setObjectName(
            _fromUtf8("mColumnCountSpinBox"))
        self.formLayout_2.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mColumnCountSpinBox)
        self.mEqualColumnWidthCheckBox = QtGui.QCheckBox(
            self.mColumnsColGroupBox)
        self.mEqualColumnWidthCheckBox.setObjectName(
            _fromUtf8("mEqualColumnWidthCheckBox"))
        self.formLayout_2.setWidget(3, QtGui.QFormLayout.SpanningRole,
                                    self.mEqualColumnWidthCheckBox)
        self.mSplitLayerCheckBox = QtGui.QCheckBox(self.mColumnsColGroupBox)
        self.mSplitLayerCheckBox.setObjectName(
            _fromUtf8("mSplitLayerCheckBox"))
        self.formLayout_2.setWidget(4, QtGui.QFormLayout.SpanningRole,
                                    self.mSplitLayerCheckBox)
        self.mainLayout.addWidget(self.mColumnsColGroupBox)
        self.mSymbolsColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mSymbolsColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mSymbolsColGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mSymbolsColGroupBox.setProperty("collapsed", True)
        self.mSymbolsColGroupBox.setObjectName(
            _fromUtf8("mSymbolsColGroupBox"))
        self.formLayout_3 = QtGui.QFormLayout(self.mSymbolsColGroupBox)
        self.formLayout_3.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_3.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_3.setObjectName(_fromUtf8("formLayout_3"))
        self.label_3 = QtGui.QLabel(self.mSymbolsColGroupBox)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.LabelRole,
                                    self.label_3)
        self.mSymbolWidthSpinBox = QgsDoubleSpinBox(self.mSymbolsColGroupBox)
        self.mSymbolWidthSpinBox.setPrefix(_fromUtf8(""))
        self.mSymbolWidthSpinBox.setProperty("showClearButton", False)
        self.mSymbolWidthSpinBox.setObjectName(
            _fromUtf8("mSymbolWidthSpinBox"))
        self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole,
                                    self.mSymbolWidthSpinBox)
        self.label_4 = QtGui.QLabel(self.mSymbolsColGroupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_4)
        self.mSymbolHeightSpinBox = QgsDoubleSpinBox(self.mSymbolsColGroupBox)
        self.mSymbolHeightSpinBox.setPrefix(_fromUtf8(""))
        self.mSymbolHeightSpinBox.setProperty("showClearButton", False)
        self.mSymbolHeightSpinBox.setObjectName(
            _fromUtf8("mSymbolHeightSpinBox"))
        self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mSymbolHeightSpinBox)
        self.mRasterBorderGroupBox = QgsCollapsibleGroupBoxBasic(
            self.mSymbolsColGroupBox)
        self.mRasterBorderGroupBox.setCheckable(True)
        self.mRasterBorderGroupBox.setProperty("syncGroup",
                                               _fromUtf8("composeritem"))
        self.mRasterBorderGroupBox.setProperty("collapsed", True)
        self.mRasterBorderGroupBox.setObjectName(
            _fromUtf8("mRasterBorderGroupBox"))
        self.gridLayout = QtGui.QGridLayout(self.mRasterBorderGroupBox)
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label_17 = QtGui.QLabel(self.mRasterBorderGroupBox)
        self.label_17.setObjectName(_fromUtf8("label_17"))
        self.gridLayout.addWidget(self.label_17, 0, 0, 1, 1)
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.mRasterBorderColorButton = QgsColorButtonV2(
            self.mRasterBorderGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mRasterBorderColorButton.sizePolicy().hasHeightForWidth())
        self.mRasterBorderColorButton.setSizePolicy(sizePolicy)
        self.mRasterBorderColorButton.setMinimumSize(QtCore.QSize(120, 0))
        self.mRasterBorderColorButton.setMaximumSize(
            QtCore.QSize(120, 16777215))
        self.mRasterBorderColorButton.setText(_fromUtf8(""))
        self.mRasterBorderColorButton.setObjectName(
            _fromUtf8("mRasterBorderColorButton"))
        self.horizontalLayout_6.addWidget(self.mRasterBorderColorButton)
        spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem3)
        self.gridLayout.addLayout(self.horizontalLayout_6, 0, 1, 1, 1)
        self.mOutlineWidthLabel = QtGui.QLabel(self.mRasterBorderGroupBox)
        self.mOutlineWidthLabel.setObjectName(_fromUtf8("mOutlineWidthLabel"))
        self.gridLayout.addWidget(self.mOutlineWidthLabel, 1, 0, 1, 1)
        self.mRasterBorderWidthSpinBox = QgsDoubleSpinBox(
            self.mRasterBorderGroupBox)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.mRasterBorderWidthSpinBox.sizePolicy().hasHeightForWidth())
        self.mRasterBorderWidthSpinBox.setSizePolicy(sizePolicy)
        self.mRasterBorderWidthSpinBox.setSingleStep(0.1)
        self.mRasterBorderWidthSpinBox.setProperty("showClearButton", False)
        self.mRasterBorderWidthSpinBox.setObjectName(
            _fromUtf8("mRasterBorderWidthSpinBox"))
        self.gridLayout.addWidget(self.mRasterBorderWidthSpinBox, 1, 1, 1, 1)
        self.formLayout_3.setWidget(2, QtGui.QFormLayout.SpanningRole,
                                    self.mRasterBorderGroupBox)
        self.mainLayout.addWidget(self.mSymbolsColGroupBox)
        self.mSymbolsColGroupBox_2 = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mSymbolsColGroupBox_2.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mSymbolsColGroupBox_2.setProperty("syncGroup",
                                               _fromUtf8("composeritem"))
        self.mSymbolsColGroupBox_2.setProperty("collapsed", True)
        self.mSymbolsColGroupBox_2.setObjectName(
            _fromUtf8("mSymbolsColGroupBox_2"))
        self.formLayout_5 = QtGui.QFormLayout(self.mSymbolsColGroupBox_2)
        self.formLayout_5.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_5.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_5.setObjectName(_fromUtf8("formLayout_5"))
        self.label_13 = QtGui.QLabel(self.mSymbolsColGroupBox_2)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.formLayout_5.setWidget(0, QtGui.QFormLayout.LabelRole,
                                    self.label_13)
        self.mWmsLegendWidthSpinBox = QgsDoubleSpinBox(
            self.mSymbolsColGroupBox_2)
        self.mWmsLegendWidthSpinBox.setPrefix(_fromUtf8(""))
        self.mWmsLegendWidthSpinBox.setMaximum(9999.0)
        self.mWmsLegendWidthSpinBox.setProperty("showClearButton", False)
        self.mWmsLegendWidthSpinBox.setObjectName(
            _fromUtf8("mWmsLegendWidthSpinBox"))
        self.formLayout_5.setWidget(0, QtGui.QFormLayout.FieldRole,
                                    self.mWmsLegendWidthSpinBox)
        self.label_14 = QtGui.QLabel(self.mSymbolsColGroupBox_2)
        self.label_14.setObjectName(_fromUtf8("label_14"))
        self.formLayout_5.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_14)
        self.mWmsLegendHeightSpinBox = QgsDoubleSpinBox(
            self.mSymbolsColGroupBox_2)
        self.mWmsLegendHeightSpinBox.setPrefix(_fromUtf8(""))
        self.mWmsLegendHeightSpinBox.setMaximum(9999.0)
        self.mWmsLegendHeightSpinBox.setProperty("showClearButton", False)
        self.mWmsLegendHeightSpinBox.setObjectName(
            _fromUtf8("mWmsLegendHeightSpinBox"))
        self.formLayout_5.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mWmsLegendHeightSpinBox)
        self.mainLayout.addWidget(self.mSymbolsColGroupBox_2)
        self.mSpacingColGroupBox = QgsCollapsibleGroupBoxBasic(
            self.scrollAreaWidgetContents)
        self.mSpacingColGroupBox.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.mSpacingColGroupBox.setProperty("syncGroup",
                                             _fromUtf8("composeritem"))
        self.mSpacingColGroupBox.setProperty("collapsed", True)
        self.mSpacingColGroupBox.setObjectName(
            _fromUtf8("mSpacingColGroupBox"))
        self.formLayout_4 = QtGui.QFormLayout(self.mSpacingColGroupBox)
        self.formLayout_4.setFieldGrowthPolicy(
            QtGui.QFormLayout.AllNonFixedFieldsGrow)
        self.formLayout_4.setLabelAlignment(QtCore.Qt.AlignLeading
                                            | QtCore.Qt.AlignLeft
                                            | QtCore.Qt.AlignVCenter)
        self.formLayout_4.setObjectName(_fromUtf8("formLayout_4"))
        self.label_5 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.LabelRole,
                                    self.label_5)
        self.mGroupSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mGroupSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mGroupSpaceSpinBox.setObjectName(_fromUtf8("mGroupSpaceSpinBox"))
        self.formLayout_4.setWidget(1, QtGui.QFormLayout.FieldRole,
                                    self.mGroupSpaceSpinBox)
        self.label_6 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.LabelRole,
                                    self.label_6)
        self.mLayerSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mLayerSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mLayerSpaceSpinBox.setObjectName(_fromUtf8("mLayerSpaceSpinBox"))
        self.formLayout_4.setWidget(2, QtGui.QFormLayout.FieldRole,
                                    self.mLayerSpaceSpinBox)
        self.label_7 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.LabelRole,
                                    self.label_7)
        self.mSymbolSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mSymbolSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mSymbolSpaceSpinBox.setObjectName(
            _fromUtf8("mSymbolSpaceSpinBox"))
        self.formLayout_4.setWidget(3, QtGui.QFormLayout.FieldRole,
                                    self.mSymbolSpaceSpinBox)
        self.label_8 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.formLayout_4.setWidget(4, QtGui.QFormLayout.LabelRole,
                                    self.label_8)
        self.mIconLabelSpaceSpinBox = QgsDoubleSpinBox(
            self.mSpacingColGroupBox)
        self.mIconLabelSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mIconLabelSpaceSpinBox.setObjectName(
            _fromUtf8("mIconLabelSpaceSpinBox"))
        self.formLayout_4.setWidget(4, QtGui.QFormLayout.FieldRole,
                                    self.mIconLabelSpaceSpinBox)
        self.label_9 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.formLayout_4.setWidget(5, QtGui.QFormLayout.LabelRole,
                                    self.label_9)
        self.mBoxSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mBoxSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mBoxSpaceSpinBox.setObjectName(_fromUtf8("mBoxSpaceSpinBox"))
        self.formLayout_4.setWidget(5, QtGui.QFormLayout.FieldRole,
                                    self.mBoxSpaceSpinBox)
        self.label_12 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.formLayout_4.setWidget(6, QtGui.QFormLayout.LabelRole,
                                    self.label_12)
        self.mColumnSpaceSpinBox = QgsDoubleSpinBox(self.mSpacingColGroupBox)
        self.mColumnSpaceSpinBox.setPrefix(_fromUtf8(""))
        self.mColumnSpaceSpinBox.setObjectName(
            _fromUtf8("mColumnSpaceSpinBox"))
        self.formLayout_4.setWidget(6, QtGui.QFormLayout.FieldRole,
                                    self.mColumnSpaceSpinBox)
        self.label_10 = QtGui.QLabel(self.mSpacingColGroupBox)
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.LabelRole,
                                    self.label_10)
        self.mTitleSpaceBottomSpinBox = QgsDoubleSpinBox(
            self.mSpacingColGroupBox)
        self.mTitleSpaceBottomSpinBox.setObjectName(
            _fromUtf8("mTitleSpaceBottomSpinBox"))
        self.formLayout_4.setWidget(0, QtGui.QFormLayout.FieldRole,
                                    self.mTitleSpaceBottomSpinBox)
        self.mainLayout.addWidget(self.mSpacingColGroupBox)
        self.scrollArea.setWidget(self.scrollAreaWidgetContents)
        self.verticalLayout.addWidget(self.scrollArea)
        self.mTitleLabel.setBuddy(self.mTitleLineEdit)
        self.mOutlineWidthLabel.setBuddy(self.mRasterBorderWidthSpinBox)

        self.retranslateUi()
        QtCore.QMetaObject.connectSlotsByName(self)
        self.setTabOrder(self.scrollArea, self.mMainPropertiesColGroupBox)
        self.setTabOrder(self.mMainPropertiesColGroupBox, self.mTitleLineEdit)
        self.setTabOrder(self.mTitleLineEdit, self.mTitleAlignCombo)
        self.setTabOrder(self.mTitleAlignCombo, self.mMapComboBox)
        self.setTabOrder(self.mMapComboBox, self.mWrapCharLineEdit)
        self.setTabOrder(self.mWrapCharLineEdit, self.mLegendItemColGroupBox)
        self.setTabOrder(self.mLegendItemColGroupBox, self.mCheckBoxAutoUpdate)
        self.setTabOrder(self.mCheckBoxAutoUpdate, self.mUpdateAllPushButton)
        self.setTabOrder(self.mUpdateAllPushButton, self.mItemTreeView)
        self.setTabOrder(self.mItemTreeView, self.mMoveDownToolButton)
        self.setTabOrder(self.mMoveDownToolButton, self.mMoveUpToolButton)
        self.setTabOrder(self.mMoveUpToolButton, self.mAddGroupToolButton)
        self.setTabOrder(self.mAddGroupToolButton, self.mAddToolButton)
        self.setTabOrder(self.mAddToolButton, self.mRemoveToolButton)
        self.setTabOrder(self.mRemoveToolButton, self.mEditPushButton)
        self.setTabOrder(self.mEditPushButton, self.mCountToolButton)
        self.setTabOrder(self.mCountToolButton, self.mFilterByMapToolButton)
        self.setTabOrder(self.mFilterByMapToolButton,
                         self.mExpressionFilterButton)
        self.setTabOrder(self.mExpressionFilterButton,
                         self.mFilterLegendByAtlasCheckBox)
        self.setTabOrder(self.mFilterLegendByAtlasCheckBox,
                         self.mFontsColGroupBox)
        self.setTabOrder(self.mFontsColGroupBox, self.mTitleFontButton)
        self.setTabOrder(self.mTitleFontButton, self.mLayerFontButton)
        self.setTabOrder(self.mLayerFontButton, self.mGroupFontButton)
        self.setTabOrder(self.mGroupFontButton, self.mItemFontButton)
        self.setTabOrder(self.mItemFontButton, self.mFontColorButton)
        self.setTabOrder(self.mFontColorButton, self.mColumnsColGroupBox)
        self.setTabOrder(self.mColumnsColGroupBox, self.mColumnCountSpinBox)
        self.setTabOrder(self.mColumnCountSpinBox,
                         self.mEqualColumnWidthCheckBox)
        self.setTabOrder(self.mEqualColumnWidthCheckBox,
                         self.mSplitLayerCheckBox)
        self.setTabOrder(self.mSplitLayerCheckBox, self.mSymbolsColGroupBox)
        self.setTabOrder(self.mSymbolsColGroupBox, self.mSymbolWidthSpinBox)
        self.setTabOrder(self.mSymbolWidthSpinBox, self.mSymbolHeightSpinBox)
        self.setTabOrder(self.mSymbolHeightSpinBox, self.mRasterBorderGroupBox)
        self.setTabOrder(self.mRasterBorderGroupBox,
                         self.mRasterBorderColorButton)
        self.setTabOrder(self.mRasterBorderColorButton,
                         self.mRasterBorderWidthSpinBox)
        self.setTabOrder(self.mRasterBorderWidthSpinBox,
                         self.mSymbolsColGroupBox_2)
        self.setTabOrder(self.mSymbolsColGroupBox_2,
                         self.mWmsLegendWidthSpinBox)
        self.setTabOrder(self.mWmsLegendWidthSpinBox,
                         self.mWmsLegendHeightSpinBox)
        self.setTabOrder(self.mWmsLegendHeightSpinBox,
                         self.mSpacingColGroupBox)
        self.setTabOrder(self.mSpacingColGroupBox,
                         self.mTitleSpaceBottomSpinBox)
        self.setTabOrder(self.mTitleSpaceBottomSpinBox,
                         self.mGroupSpaceSpinBox)
        self.setTabOrder(self.mGroupSpaceSpinBox, self.mLayerSpaceSpinBox)
        self.setTabOrder(self.mLayerSpaceSpinBox, self.mSymbolSpaceSpinBox)
        self.setTabOrder(self.mSymbolSpaceSpinBox, self.mIconLabelSpaceSpinBox)
        self.setTabOrder(self.mIconLabelSpaceSpinBox, self.mBoxSpaceSpinBox)
        self.setTabOrder(self.mBoxSpaceSpinBox, self.mColumnSpaceSpinBox)
Esempio n. 19
0
# coding: utf-8
from qgis.gui import QgsDoubleSpinBox

double_spin_box = QgsDoubleSpinBox()

double_spin_box.show()
class QgsSvgExportOptionsDialog(object):
    def setupUi(self, QgsSvgExportOptionsDialog):
        QgsSvgExportOptionsDialog.setObjectName(
            _fromUtf8("QgsSvgExportOptionsDialog"))
        QgsSvgExportOptionsDialog.resize(489, 282)
        self.verticalLayout = QtGui.QVBoxLayout(QgsSvgExportOptionsDialog)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.groupBox = QgsCollapsibleGroupBoxBasic(QgsSvgExportOptionsDialog)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout_2 = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.chkMapLayersAsGroup = QtGui.QCheckBox(self.groupBox)
        self.chkMapLayersAsGroup.setChecked(False)
        self.chkMapLayersAsGroup.setObjectName(
            _fromUtf8("chkMapLayersAsGroup"))
        self.verticalLayout_2.addWidget(self.chkMapLayersAsGroup)
        self.chkTextAsOutline = QtGui.QCheckBox(self.groupBox)
        self.chkTextAsOutline.setEnabled(True)
        self.chkTextAsOutline.setChecked(True)
        self.chkTextAsOutline.setObjectName(_fromUtf8("chkTextAsOutline"))
        self.verticalLayout_2.addWidget(self.chkTextAsOutline)
        self.verticalLayout.addWidget(self.groupBox)
        self.mClipToContentGroupBox = QgsCollapsibleGroupBoxBasic(
            QgsSvgExportOptionsDialog)
        self.mClipToContentGroupBox.setCheckable(True)
        self.mClipToContentGroupBox.setChecked(False)
        self.mClipToContentGroupBox.setObjectName(
            _fromUtf8("mClipToContentGroupBox"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.mClipToContentGroupBox)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.gridLayout_5 = QtGui.QGridLayout()
        self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
        self.mTopMarginSpinBox = QgsDoubleSpinBox(self.mClipToContentGroupBox)
        self.mTopMarginSpinBox.setSingleStep(0.1)
        self.mTopMarginSpinBox.setObjectName(_fromUtf8("mTopMarginSpinBox"))
        self.gridLayout_5.addWidget(self.mTopMarginSpinBox, 0, 2, 1, 1)
        self.horizontalLayout_7 = QtGui.QHBoxLayout()
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.label_5 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.horizontalLayout_7.addWidget(self.label_5)
        self.mLeftMarginSpinBox = QgsDoubleSpinBox(self.mClipToContentGroupBox)
        self.mLeftMarginSpinBox.setSingleStep(0.1)
        self.mLeftMarginSpinBox.setObjectName(_fromUtf8("mLeftMarginSpinBox"))
        self.horizontalLayout_7.addWidget(self.mLeftMarginSpinBox)
        self.label_11 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.horizontalLayout_7.addWidget(self.label_11)
        self.mRightMarginSpinBox = QgsDoubleSpinBox(
            self.mClipToContentGroupBox)
        self.mRightMarginSpinBox.setSingleStep(0.1)
        self.mRightMarginSpinBox.setObjectName(
            _fromUtf8("mRightMarginSpinBox"))
        self.horizontalLayout_7.addWidget(self.mRightMarginSpinBox)
        self.gridLayout_5.addLayout(self.horizontalLayout_7, 1, 0, 1, 4)
        self.label_12 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.gridLayout_5.addWidget(self.label_12, 2, 1, 1, 1)
        self.mBottomMarginSpinBox = QgsDoubleSpinBox(
            self.mClipToContentGroupBox)
        self.mBottomMarginSpinBox.setSingleStep(0.1)
        self.mBottomMarginSpinBox.setObjectName(
            _fromUtf8("mBottomMarginSpinBox"))
        self.gridLayout_5.addWidget(self.mBottomMarginSpinBox, 2, 2, 1, 1)
        self.label_4 = QtGui.QLabel(self.mClipToContentGroupBox)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.gridLayout_5.addWidget(self.label_4, 0, 1, 1, 1)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                       QtGui.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem, 0, 3, 1, 1)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                        QtGui.QSizePolicy.Minimum)
        self.gridLayout_5.addItem(spacerItem1, 0, 0, 1, 1)
        self.verticalLayout_5.addLayout(self.gridLayout_5)
        self.verticalLayout.addWidget(self.mClipToContentGroupBox)
        spacerItem2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum,
                                        QtGui.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem2)
        self.buttonBox = QtGui.QDialogButtonBox(QgsSvgExportOptionsDialog)
        self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
        self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel
                                          | QtGui.QDialogButtonBox.Save)
        self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
        self.verticalLayout.addWidget(self.buttonBox)

        self.retranslateUi(QgsSvgExportOptionsDialog)
        QtCore.QObject.connect(self.buttonBox,
                               QtCore.SIGNAL(_fromUtf8("accepted()")),
                               QgsSvgExportOptionsDialog.accept)
        QtCore.QObject.connect(self.buttonBox,
                               QtCore.SIGNAL(_fromUtf8("rejected()")),
                               QgsSvgExportOptionsDialog.reject)
        QtCore.QMetaObject.connectSlotsByName(QgsSvgExportOptionsDialog)
        QgsSvgExportOptionsDialog.setTabOrder(self.chkMapLayersAsGroup,
                                              self.chkTextAsOutline)
        QgsSvgExportOptionsDialog.setTabOrder(self.chkTextAsOutline,
                                              self.mClipToContentGroupBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mClipToContentGroupBox,
                                              self.mTopMarginSpinBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mTopMarginSpinBox,
                                              self.mLeftMarginSpinBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mLeftMarginSpinBox,
                                              self.mRightMarginSpinBox)
        QgsSvgExportOptionsDialog.setTabOrder(self.mRightMarginSpinBox,
                                              self.mBottomMarginSpinBox)

    def retranslateUi(self, QgsSvgExportOptionsDialog):
        QgsSvgExportOptionsDialog.setWindowTitle(
            _translate("QgsSvgExportOptionsDialog", "SVG export options",
                       None))
        self.groupBox.setTitle(
            _translate("QgsSvgExportOptionsDialog", "SVG options", None))
        self.chkMapLayersAsGroup.setText(
            _translate(
                "QgsSvgExportOptionsDialog",
                "Export map layers as svg groups (may affect label placement)",
                None))
        self.chkTextAsOutline.setToolTip(
            _translate(
                "QgsSvgExportOptionsDialog",
                "Uncheck to render map labels as text objects. This will degrade the quality of the map labels but allow editing in vector illustration software.",
                None))
        self.chkTextAsOutline.setText(
            _translate("QgsSvgExportOptionsDialog",
                       "Render map labels as outlines", None))
        self.mClipToContentGroupBox.setTitle(
            _translate("QgsSvgExportOptionsDialog", "Crop to content", None))
        self.label_5.setText(
            _translate("QgsSvgExportOptionsDialog", "Left", None))
        self.label_11.setText(
            _translate("QgsSvgExportOptionsDialog", "Right", None))
        self.label_12.setText(
            _translate("QgsSvgExportOptionsDialog", "Bottom", None))
        self.label_4.setText(
            _translate("QgsSvgExportOptionsDialog", "Top margin (mm)", None))
Esempio n. 21
0
    def initGui(self):
        _ = self.add_action(
            'serval_icon.svg',
            text=u'Show Serval Toolbars',
            add_to_menu=True,
            callback=self.show_toolbar,
            always_on=True, )

        _ = self.add_action(
            'serval_icon.svg',
            text=u'Hide Serval Toolbars',
            add_to_menu=True,
            callback=self.hide_toolbar,
            always_on=True, )

        self.probe_btn = self.add_action(
            'probe.svg',
            text="Probe raster",
            callback=self.activate_probing,
            add_to_toolbar=self.toolbar,
            checkable=True, )
        self.map_tool_btn[self.probe_tool] = self.probe_btn

        self.color_btn = QgsColorButton()
        self.color_btn.setColor(Qt.gray)
        self.color_btn.setMinimumSize(QSize(40, 24))
        self.color_btn.setMaximumSize(QSize(40, 24))
        self.toolbar.addWidget(self.color_btn)
        self.color_picker_connection(connect=True)
        self.color_btn.setDisabled(True)

        self.toolbar.addWidget(QLabel("Band:"))
        self.bands_cbo = QComboBox()
        self.bands_cbo.addItem("1", 1)
        self.toolbar.addWidget(self.bands_cbo)
        self.bands_cbo.currentIndexChanged.connect(self.update_active_bands)
        self.bands_cbo.setDisabled(True)

        self.spin_boxes = BandBoxes()
        self.toolbar.addWidget(self.spin_boxes)
        self.spin_boxes.enter_hit.connect(self.apply_spin_box_values)

        self.draw_btn = self.add_action(
            'draw.svg',
            text="Apply Value(s) To Single Cell",
            callback=self.activate_drawing,
            add_to_toolbar=self.toolbar,
            checkable=True, )
        self.map_tool_btn[self.draw_tool] = self.draw_btn

        self.apply_spin_box_values_btn = self.add_action(
            'apply_const_value.svg',
            text="Apply Value(s) to Selection",
            callback=self.apply_spin_box_values,
            add_to_toolbar=self.toolbar, )

        self.gom_btn = self.add_action(
            'apply_nodata_value.svg',
            text="Apply NoData to Selection",
            callback=self.apply_nodata_value,
            add_to_toolbar=self.toolbar, )

        self.exp_dlg_btn = self.add_action(
            'apply_expression_value.svg',
            text="Apply Expression Value To Selection",
            callback=self.define_expression,
            add_to_toolbar=self.toolbar,
            checkable=False, )

        self.low_pass_filter_btn = self.add_action(
            'apply_low_pass_filter.svg',
            text="Apply Low-Pass 3x3 Filter To Selection",
            callback=self.apply_low_pass_filter,
            add_to_toolbar=self.toolbar,
            checkable=False, )

        self.undo_btn = self.add_action(
            'undo.svg',
            text="Undo",
            callback=self.undo,
            add_to_toolbar=self.toolbar, )

        self.redo_btn = self.add_action(
            'redo.svg',
            text="Redo",
            callback=self.redo,
            add_to_toolbar=self.toolbar, )

        self.set_nodata_btn = self.add_action(
            'set_nodata.svg',
            text="Edit Raster NoData Values",
            callback=self.set_nodata,
            add_to_toolbar=self.toolbar, )

        self.settings_btn = self.add_action(
            'edit_settings.svg',
            text="Serval Settings",
            callback=self.edit_settings,
            add_to_toolbar=self.toolbar,
            always_on=True, )

        self.show_help = self.add_action(
            'help.svg',
            text="Help",
            add_to_menu=True,
            callback=self.show_website,
            add_to_toolbar=self.toolbar,
            always_on=True, )

        # Selection Toolbar

        line_width_icon = QIcon(icon_path("line_width.svg"))
        line_width_lab = QLabel()
        line_width_lab.setPixmap(line_width_icon.pixmap(22, 12))
        self.sel_toolbar.addWidget(line_width_lab)

        self.line_width_sbox = QgsDoubleSpinBox()
        self.line_width_sbox.setMinimumSize(QSize(50, 24))
        self.line_width_sbox.setMaximumSize(QSize(50, 24))
        # self.line_width_sbox.setButtonSymbols(QAbstractSpinBox.NoButtons)
        self.line_width_sbox.setValue(1)
        self.line_width_sbox.setMinimum(0.01)
        self.line_width_sbox.setShowClearButton(False)
        self.line_width_sbox.setToolTip("Selection Line Width")
        self.line_width_sbox.valueChanged.connect(self.update_selection_tool)

        self.width_unit_cbo = QComboBox()
        self.width_units = ("map units", "pixel width", "pixel height", "hairline",)
        for u in self.width_units:
            self.width_unit_cbo.addItem(u)
        self.width_unit_cbo.setToolTip("Selection Line Width Unit")
        self.sel_toolbar.addWidget(self.line_width_sbox)
        self.sel_toolbar.addWidget(self.width_unit_cbo)
        self.width_unit_cbo.currentIndexChanged.connect(self.update_selection_tool)

        self.line_select_btn = self.add_action(
            'select_line.svg',
            text="Select Raster Cells by Line",
            callback=self.activate_line_selection,
            add_to_toolbar=self.sel_toolbar,
            checkable=True, )

        self.polygon_select_btn = self.add_action(
            'select_polygon.svg',
            text="Select Raster Cells by Polygon",
            callback=self.activate_polygon_selection,
            add_to_toolbar=self.sel_toolbar,
            checkable=True, )

        self.selection_from_layer_btn = self.add_action(
            'select_from_layer.svg',
            text="Create Selection From Layer",
            callback=self.selection_from_layer,
            add_to_toolbar=self.sel_toolbar, )

        self.selection_to_layer_btn = self.add_action(
            'selection_to_layer.svg',
            text="Create Memory Layer From Selection",
            callback=self.selection_to_layer,
            add_to_toolbar=self.sel_toolbar, )

        self.clear_selection_btn = self.add_action(
            'clear_selection.svg',
            text="Clear selection",
            callback=self.clear_selection,
            add_to_toolbar=self.sel_toolbar, )

        self.toggle_all_touched_btn = self.add_action(
            'all_touched.svg',
            text="Toggle All Touched Get Selected",
            callback=self.toggle_all_touched,
            checkable=True, checked=True,
            add_to_toolbar=self.sel_toolbar, )
        self.all_touched = True

        self.enable_toolbar_actions(enable=False)
        self.check_undo_redo_btns()