def populateStatusBar():
            statusBar = self.statusBar()

            w = QCheckBox("Render", self)
            w.setObjectName('renderCheck')
            w.setToolTip("Toggle map rendering")
            w.setChecked(True)
            statusBar.addPermanentWidget(w)

            w = QCheckBox("Marker", self)
            w.setObjectName('markerCheck')
            w.setToolTip("Toggle marker with cursor position from main map")
            w.setChecked(False)
            statusBar.addPermanentWidget(w, 1)

            w = QCheckBox("Extent", self)
            w.setObjectName('extentCheck')
            w.setToolTip("Show extent of main map")
            w.setChecked(False)
            statusBar.addPermanentWidget(w, 1)

            w = QToolButton(self)
            w.setObjectName('highlightBtn')
            w.setToolTip("Highlight extent in main map")
            w.setText("Highlight")
            statusBar.addPermanentWidget(w, 1)

            w = QLabel("Scale factor:", self)
            w.setObjectName('scaleFactorLabel')
            w.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
            statusBar.addPermanentWidget(w, 1)

            w = QDoubleSpinBox(self)
            w.setObjectName('scaleFactorSpin')
            w.setToolTip("Current scale factor of main map")
            w.setMinimum(0.0)
            w.setMaximum(1000.0)
            w.setDecimals(3)
            w.setValue(1)
            w.setSingleStep(.05)
            statusBar.addPermanentWidget(w, 1)

            w = QToolButton(self)
            w.setObjectName('scaleBtn')
            w.setToolTip("Set scale for main map")
            w.setText("Scale: ")
            statusBar.addPermanentWidget(w, 1)
    def populateStatusBar():
      statusBar = self.statusBar()

      w = QCheckBox( "Render", self )
      w.setObjectName( 'renderCheck')
      w.setToolTip( "Toggle map rendering" )
      w.setChecked( True )
      statusBar.addPermanentWidget( w )

      w = QCheckBox( "Marker", self )
      w.setObjectName( 'markerCheck')
      w.setToolTip( "Toggle marker with cursor position from main map" )
      w.setChecked( False )
      statusBar.addPermanentWidget( w, 1 )

      w = QCheckBox( "Extent", self )
      w.setObjectName( 'extentCheck')
      w.setToolTip( "Show extent of main map" )
      w.setChecked( False )
      statusBar.addPermanentWidget( w, 1 )

      w = QToolButton(self)
      w.setObjectName( 'highlightBtn')
      w.setToolTip( "Highlight extent in main map" )
      w.setText("Highlight")
      statusBar.addPermanentWidget( w, 1 )

      w = QLabel( "Scale factor:", self )
      w.setObjectName( 'scaleFactorLabel')
      w.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
      statusBar.addPermanentWidget( w, 1 )

      w = QDoubleSpinBox(self)
      w.setObjectName( 'scaleFactorSpin')
      w.setToolTip( "Current scale factor of main map" )
      w.setMinimum(0.0)
      w.setMaximum(1000.0)
      w.setDecimals(3)
      w.setValue(1)
      w.setSingleStep(.05)
      statusBar.addPermanentWidget( w, 1 )

      w = QToolButton(self)
      w.setObjectName( 'scaleBtn')
      w.setToolTip( "Set scale for main map" )
      w.setText("Scale: ")
      statusBar.addPermanentWidget( w, 1 )
Beispiel #3
0
 def _make_simple_field(cls, option, parent):
     field  = None
     label  = option.name.replace('_', ' ')
     layout = parent.layout()
     if option.field_type == 'bool':
         field = QCheckBox(parent)
     elif option.field_type == 'str':
         if option.is_multi:
             field = PolyLineEdit(parent)
         else:
             field = QLineEdit(parent)
     elif option.field_type in ('float', 'int'):
         if option.field_type == 'float':
             field = QDoubleSpinBox(parent)
             field.setDecimals(option.decimals)
             field.setSingleStep(option.step)
         else:
             field = QSpinBox(parent)
         if option.units:
             label += (' (%s)' % option.units).replace('%%', '%')
         if option.limits:
             if option.limits[0] is not None:
                 field.setMinimum(float(option.limits[0]))
             if option.limits[1] is not None:
                 field.setMaximum(float(option.limits[1]))
             else: field.setMaximum(sys.maxint)
         if option.default:
             field.setValue(option.default)
     elif option.field_type in ('file', 'directory'):
         #label is a button which opens chooser dialog
         file_dialog = FileDialog(parent, label, option.name)
         label = QPushButton(label, parent)
         #button-label
         label.clicked.connect(file_dialog.show)
         #field itself
         if option.is_multi:
             field = PolyLineEdit(parent)
         else:
             field = QLineEdit(parent)
         #connect signals
         if option.field_type == 'file':
             if option.is_multi:
                 file_dialog.setFileMode(QFileDialog.ExistingFiles)
                 file_dialog.filesSelected.connect(field.setText)
             else:
                 file_dialog.fileSelected.connect(field.setText)
         else:
             file_dialog.setFileMode(QFileDialog.Directory)
             file_dialog.setOption(QFileDialog.ShowDirsOnly, True)
             file_dialog.fileSelected.connect(field.setText)
             field.textChanged.connect(file_dialog.setDirectory)
     if field:
         field.setToolTip(option.formatted_desc)
         if not option.save:
             field.setStyleSheet('* { background: hsv(60, 50, 255) }')
         if hasattr(cls.customize_field, '__call__'):
             cls.customize_field(option, field, label)
         if isinstance(label, str): 
             label = QLabel(label, parent)
             label.setToolTip(option.formatted_desc)
             label.setSizePolicy(QSizePolicy.Maximum, QSizePolicy.Maximum)
         row = layout.rowCount()
         layout.addWidget(label, row, 0)
         layout.addWidget(field, row, 1)
     return field 
Beispiel #4
0
 def _make_simple_field(cls, option, parent):
     field = None
     label = option.name.replace('_', ' ')
     layout = parent.layout()
     if option.field_type == 'bool':
         field = QCheckBox(parent)
     elif option.field_type == 'str':
         if option.is_multi:
             field = PolyLineEdit(parent)
         else:
             field = QLineEdit(parent)
     elif option.field_type in ('float', 'int'):
         if option.field_type == 'float':
             field = QDoubleSpinBox(parent)
             field.setDecimals(option.decimals)
             field.setSingleStep(option.step)
         else:
             field = QSpinBox(parent)
         if option.units:
             label += (' (%s)' % option.units).replace('%%', '%')
         if option.limits:
             if option.limits[0] is not None:
                 field.setMinimum(float(option.limits[0]))
             if option.limits[1] is not None:
                 field.setMaximum(float(option.limits[1]))
             else:
                 field.setMaximum(sys.maxint)
         if option.default:
             field.setValue(option.default)
     elif option.field_type in ('file', 'directory'):
         #label is a button which opens chooser dialog
         file_dialog = FileDialog(parent, label, option.name)
         label = QPushButton(label, parent)
         #button-label
         label.clicked.connect(file_dialog.show)
         #field itself
         if option.is_multi:
             field = PolyLineEdit(parent)
         else:
             field = QLineEdit(parent)
         #connect signals
         if option.field_type == 'file':
             if option.is_multi:
                 file_dialog.setFileMode(QFileDialog.ExistingFiles)
                 file_dialog.filesSelected.connect(field.setText)
             else:
                 file_dialog.fileSelected.connect(field.setText)
         else:
             file_dialog.setFileMode(QFileDialog.Directory)
             file_dialog.setOption(QFileDialog.ShowDirsOnly, True)
             file_dialog.fileSelected.connect(field.setText)
             field.textChanged.connect(file_dialog.setDirectory)
     if field:
         field.setToolTip(option.formatted_desc)
         if not option.save:
             field.setStyleSheet('* { background: hsv(60, 50, 255) }')
         if hasattr(cls.customize_field, '__call__'):
             cls.customize_field(option, field, label)
         if isinstance(label, str):
             label = QLabel(label, parent)
             label.setToolTip(option.formatted_desc)
             label.setSizePolicy(QSizePolicy.Maximum, QSizePolicy.Maximum)
         row = layout.rowCount()
         layout.addWidget(label, row, 0)
         layout.addWidget(field, row, 1)
     return field