Ejemplo n.º 1
0
    def __init__(self, parent, viewwidget, layer):
        title = "Stretch: %s" % layer.title
        QDockWidget.__init__(self, title, parent)
        # save the view widget
        self.viewwidget = viewwidget
        self.layer = layer
        self.parent = parent

        # create a new widget that lives in the dock window
        self.dockWidget = QWidget()

        # create the toolbar
        self.toolBar = QToolBar(self.dockWidget)
        self.setupActions()
        self.setupToolbar()

        # our stretch layout
        self.stretchLayout = StretchLayout(self.dockWidget, self.layer.stretch,
                                           self.layer.gdalDataset)

        # layout for stretch and buttons
        self.mainLayout = QVBoxLayout()
        self.mainLayout.addWidget(self.toolBar)
        self.mainLayout.addLayout(self.stretchLayout)

        self.dockWidget.setLayout(self.mainLayout)

        # tell the dock window this is the widget to display
        self.setWidget(self.dockWidget)

        # make sure we get notified if the layers change so
        # we can close if needed
        viewwidget.layers.layersChanged.connect(self.onLayersChanged)
Ejemplo n.º 2
0
    def __init__(self, plugin, parent=None):
        QDockWidget.__init__(self, parent=parent)
        try:
            self.setWindowTitle('Load a ' + plugin.mlGetPluginName() +
                                ' trainer')
        except:
            self.setWindowTitle('Plugin trainer loader')
        self._mainWidget = QWidget()
        self._plugin = plugin

        self._network_filepath = None
        self._trainer_filepath = None
        self._data_filepath = None
        self._trainer_name = None

        self.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Expanding)
        self._mainWidget.setSizePolicy(QSizePolicy.Fixed,
                                       QSizePolicy.Expanding)

        self.mlBuildTrainerLoaderMainWidget()

        self.setWidget(self._mainWidget)
        self.setVisible(False)

        self.visibilityChanged.connect(self.mlOnVisibilityChanged)
        self.setFeatures(QDockWidget.DockWidgetClosable)

        self._exclusiveUI = None
Ejemplo n.º 3
0
    def __init__(self, parentObject, windowTitle, windowIcon=QIcon(), shortcut=None):
        QDockWidget.__init__(self, parentObject)
        self._showAction = None

        self.setObjectName(str(self.__class__))
        self.setWindowTitle(windowTitle)

        self.setFeatures(self.features() & (~QDockWidget.DockWidgetFloatable))

        if not windowIcon.isNull():
            self.setWindowIcon(windowIcon)
        if shortcut is not None:
            self.showAction().setShortcut(shortcut)

        self._titleBar = _TitleBar(self)
        self.setTitleBarWidget(self._titleBar)

        if shortcut is not None:
            toolTip = "Move focus with <b>%s</b>,<br/>close with <b>Esc</b>" % shortcut
        else:
            toolTip = "Close with <b>Esc</b>"
        self._titleBar.setToolTip(toolTip)

        self._closeShortcut = QShortcut(QKeySequence("Esc"), self)
        self._closeShortcut.setContext(Qt.WidgetWithChildrenShortcut)
        self._closeShortcut.activated.connect(self._close)
Ejemplo n.º 4
0
    def __init__(self, colorModel, parent = None):

        QDockWidget.__init__(self, "&Colors", parent)

        self.setAllowedAreas(Qt.LeftDockWidgetArea | Qt.RightDockWidgetArea)

        self.colorModel = colorModel
        self.colorPalette = ColorPalette(self)

        colorList = QTreeView()
        colorList.header().hide()
        colorList.setRootIsDecorated(False)
        colorList.setModel(self.colorModel)

        # TODO SIGNAL
        # self.connect(colorList, SIGNAL("activated(QModelIndex)"),
        #              self.editColor)

        self.backgroundButton = QPushButton("&Background Color")
        # TODO SIGNAL
        # self.connect(self.backgroundButton, SIGNAL("clicked()"), self.selectBackground)
        self._set_background_button_color(colorModel.background)

        widget = QWidget()
        layout = QVBoxLayout(widget)
        layout.addWidget(colorList)
        layout.addWidget(self.backgroundButton)

        self.setWidget(widget)
Ejemplo n.º 5
0
    def __init__(self,
                 parentObject,
                 windowTitle,
                 windowIcon=QIcon(),
                 shortcut=None):
        QDockWidget.__init__(self, parentObject)
        self._showAction = None

        self.setObjectName(str(self.__class__))
        self.setWindowTitle(windowTitle)

        if not windowIcon.isNull():
            self.setWindowIcon(windowIcon)
        if shortcut is not None:
            self.showAction().setShortcut(shortcut)

        self._titleBar = _TitleBar(self)
        self.setTitleBarWidget(self._titleBar)

        if shortcut is not None:
            toolTip = "Move focus with <b>%s</b>,<br/>close with <b>Esc</b>" % shortcut
        else:
            toolTip = "Close with <b>Esc</b>"
        self._titleBar.setToolTip(toolTip)

        self._closeShortcut = QShortcut(QKeySequence("Esc"), self)
        self._closeShortcut.setContext(Qt.WidgetWithChildrenShortcut)
        self._closeShortcut.activated.connect(self._close)
Ejemplo n.º 6
0
 def __init__(self, window, parent=None):
     QDockWidget.__init__(self, parent=parent)
     self.setupUi(self)
     self.window = window
     self.setMaximumHeight(EVENT_POPUP_FLOAT_MAX_Y)
     self.dockLocationChanged.connect(self.locationChanged)
     self.topLevelChanged.connect(self.locationChanged)
Ejemplo n.º 7
0
 def __init__(self, *args):
     QDockWidget.__init__(self, *args)
     self.titleBar = DockWidgetTitleBar(self)
     self.setTitleBarWidget(self.titleBar)
     self.mainWidget = None
     self.entered = False
     self.pinned = True
     self.shot = False
Ejemplo n.º 8
0
 def __init__(self, parent):
     QDockWidget.__init__(self, parent=parent)
     self.setupUi(self)
     self.mw = parent
     #
     self.ed_path.setText(self.mw.cfg.value("root_path", defaultValue=QDir.homePath()))
     self.setupDirModel()
     self.tree.clicked.connect(self.onDirClicked)
     # self.btn_selectdir.clicked.connect(self.onButtonSelectDir)
     self.ed_path.returnPressed.connect(self.setupDirModel)
Ejemplo n.º 9
0
    def __init__(self, datefmt=None, infoString=True):
        """Constructor of the QtDockLog
        
        Log Dock Widget to use in a PyQt GUI.
        Will output all info written to logging.info(), logging..debug() etc.
    
        usage:
            log_dock = QtDockLog()
            addDockWidget(QtCore.Qt.BottomDockWidgetArea, log_dock)
        
            
        Parameters
        ---------
        datefmt : format string, optional
            format string for date time in log messages
        
        infoString : bool, optional
            if false info messages are not prefixed with the log level string
        """

        QDockWidget.__init__(self)

        # Set up the user interface from Designer.
        self.ui = Ui_DockWidget()
        self.ui.setupUi(self)

        ### define logger and handler
        self.logger = logging.getLogger()
        self.handler = LogHandler(self)
        self.handler.setFormatter(
            LogFormat(datefmt=datefmt, infoString=infoString))
        self.logger.setLevel(logging.DEBUG)
        self.logger.addHandler(self.handler)

        # define file for the second handler, saving the complete log to file
        self.filename = "log.out"
        # remove possibly existing log file (otherwise it appends to it)
        try:
            os.remove(self.filename)
        except:
            pass

        # define second file handler, saving all of the log to self.filename
        self.filehandler = logging.FileHandler(self.filename)
        self.filehandler.setLevel(logging.DEBUG)  # set to DEBUG --> saves all
        self.filehandler.setFormatter(
            LogFormat(datefmt=datefmt,
                      infoString=infoString))  # use the same format
        self.logger.addHandler(self.filehandler)  # attach to logger

        ### connections
        self.ui.comboBox.currentIndexChanged.connect(
            lambda: self.setLevel(self.ui.comboBox.currentText()))
        self.ui.pushButtonSave.clicked.connect(self.saveLog)
Ejemplo n.º 10
0
    def __init__(self, parent=None):
        QDockWidget.__init__(self, parent)

        self.ui = Ui_ProjectViewWidget()
        self.ui.setupUi(self)
        self.project_model = None

        self.ui.project_view.doubleClicked.connect(
            self.slot_project_view_double_clicked)
        self.ui.project_view.customContextMenuRequested.connect(
            self.slot_project_context_menu_requested)
Ejemplo n.º 11
0
    def __init__(self, parent=None):
        QDockWidget.__init__(self)
        self.parent = parent
        self._name = self.__class__.__name__
        self.signals = SignalManager(self)
        self.logger = Loggers(self.__class__.__name__)
        self.settings = Settings(SETTING_FILEPTH['app'], ST_FORMAT['ini'],
                                 self)

        self.values = dict(w=self.width(),
                           h=self.height(),
                           x=self.x(),
                           y=self.y())
Ejemplo n.º 12
0
 def __init__(self, mobj='/', parent=None, flags=None):
     QDockWidget.__init__(self, parent=parent)
     mobj = moose.element(mobj)
     #self.view = view = ObjectEditView(mobj)
     self.view = view = ObjectEditView(mobj)
     self.view_dict = {mobj: view}
     base = QWidget()
     layout = QVBoxLayout()
     base.setLayout(layout)
     layout.addWidget(self.view)
     layout.addWidget(QTextEdit())
     self.setWidget(base)
     self.setWindowTitle('Edit: %s' % (mobj.path))
Ejemplo n.º 13
0
    def __init__(self, iface, new_dict, lang):
        # setup UI and connect the buttons
        QDockWidget.__init__(self)
        self.iface = iface
        self.setupUi(self)
        self.plugin_dir = os.path.dirname(__file__)
        self.filePath = ""
        self.new_dict = new_dict
        self.lang = lang
        self.canvas = self.iface.mapCanvas()

        self.LayerScan()
        self.shape_tab.cellClicked.connect(self.clicked)
Ejemplo n.º 14
0
    def __init__(self, MainWin):
        QDockWidget.__init__(self)
        self.MainWin = MainWin
        self.MainMenu = MainWin.menuBar()
 
        self.WndowMenu  = self.MainMenu.addMenu('Windows')
 
        self.OptnAct = QAction('Options', self)
        self.OptnAct.setStatusTip('Open the Options Window')
        self.OptnAct.triggered.connect(MainWin.ShowOptions)
 
        self.WndowMenu.addAction(self.OptnAct)
 
        self.InitToolBar(MainWin)
    def __init__(self, parent, plugin):
        self.plugin = plugin
        QDockWidget.__init__(self, parent)
        self.setupUi(self)

        self.btnApply.setIcon(QIcon(":plugins/nominatim/arrow_green.png"))
        self.btnMask.setIcon(QIcon(":plugins/nominatim/add_mask.png"))
        self.btnLayer.setIcon(QIcon(":plugins/nominatim/add_layer.png"))

        self.tableResult.installEventFilter(self)  # cf. eventFilter method
        self.tableResult.cellDoubleClicked.connect(self.onChoose)
        self.tableResult.cellEntered.connect(self.cellEntered)

        self.editSearch.returnPressed.connect(self.onReturnPressed)
        self.btnSearch.clicked.connect(self.onReturnPressed)
        self.btnApply.clicked.connect(self.onApply)
        self.btnHelp.clicked.connect(self.plugin.do_help)
        self.btnLocalize.clicked.connect(self.doLocalize)
        self.btnMask.clicked.connect(self.onMask)
        self.btnLayer.clicked.connect(self.onLayer)

        self.MultiPolygonLayerId = None
        self.LineLayerId = None
        self.PointLayerId = None

        try:
            self.cbExtent.setChecked(self.plugin.limitSearchToExtent)
        except:
            self.cbExtent.setChecked(self.plugin.limitSearchToExtent)

        self.currentExtent = self.plugin.canvas.extent()

        self.tableResult.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents)

        try:
            self.editSearch.setText(self.plugin.lastSearch)
        except:
            pass

        try:
            if self.plugin.localiseOnStartup:
                self.doLocalize()
        except Exception as e:
            for m in e.args:
                QgsMessageLog.logMessage(m, 'Extensions')
            pass

        self.nominatim_networkAccessManager = QgsNetworkAccessManager.instance()
Ejemplo n.º 16
0
    def __init__(self, iface: QgisInterface) -> None:
        QDockWidget.__init__(self)
        self.setupUi(self)
        self.iface = iface

        self.applyIcons()
        self.setupTimeLineEdits()
        self.addGIS()
        self.populateCboFeatures()
        self.populateCboFields()

        # input checking - add red text if an error is flagged
        self.flags = []
        self.leInputXML.editingFinished.connect(self.inputCatchmentChanged)
        self.rbUserArea.toggled.connect(self.checkAreaInput)
        self.sbArea.valueChanged.connect(self.checkAreaInput)
        self.cboInputGIS.currentIndexChanged.connect(self.checkAreaInput)
        self.leDuration.editingFinished.connect(self.durationChanged)
        self.leTimestep.editingFinished.connect(self.durationChanged)

        QgsProject.instance().layersAdded.connect(self.addGIS)
        QgsProject.instance().layersRemoved.connect(self.addGIS)
        self.cboInputGIS.currentIndexChanged.connect(self.populateCboFields)
        self.cboInputGIS.currentIndexChanged.connect(self.populateCboFeatures)
        self.cboFields.currentIndexChanged.connect(self.populateCboFeatures)
        self.cbSelectAll.clicked.connect(self.toggleSelectAll)
        self.btnAddRP.clicked.connect(self.addReturnPeriod)
        self.btnRemoveRP.clicked.connect(self.removeReturnPeriods)
        self.rbRural.clicked.connect(
            lambda e: self.radioButtonClones(button=self.rbRural))
        self.rbUrban.clicked.connect(
            lambda e: self.radioButtonClones(button=self.rbUrban))
        self.rbRuralClone.clicked.connect(
            lambda e: self.radioButtonClones(button=self.rbRuralClone))
        self.rbUrbanClone.clicked.connect(
            lambda e: self.radioButtonClones(button=self.rbUrbanClone))
        self.pbRun.clicked.connect(self.check)

        dir = os.path.dirname(os.path.dirname(__file__))
        rf2Icon = QIcon(os.path.join(dir, 'icons', "ReFH2icon.png"))
        self.btnInputXML.clicked.connect(lambda: browse(
            self, "existing file", "TUFLOW/refh2_xml",
            "Catchment Descriptor Input", "XML (*.xml *.XML)", self.leInputXML,
            rf2Icon, lambda: self.inputCatchmentChanged()))
        self.btnOutfile.clicked.connect(
            lambda: browse(self, "output file", "TUFLOW/refh2_outfile",
                           "ReFH2 Output CSV File", "CSV (*.csv *.CSV)", self.
                           leOutfile, rf2Icon))
Ejemplo n.º 17
0
    def __init__(self, parent, plugin):
        self.plugin = plugin
        QDockWidget.__init__(self, parent)
        self.setupUi(self)

        self.btnApply.setIcon(QIcon(":plugins/nominatim/arrow_green.png"))
        self.btnMask.setIcon(QIcon(":plugins/nominatim/add_mask.png"))
        self.btnLayer.setIcon(QIcon(":plugins/nominatim/add_layer.png"))

        self.tableResult.installEventFilter(self)  # cf. eventFilter method
        self.tableResult.cellDoubleClicked.connect(self.onChoose)
        self.tableResult.cellEntered.connect(self.cellEntered)

        self.editSearch.returnPressed.connect(self.onReturnPressed)
        self.btnSearch.clicked.connect(self.onReturnPressed)
        self.btnApply.clicked.connect(self.onApply)
        self.btnHelp.clicked.connect(self.plugin.do_help)
        self.btnLocalize.clicked.connect(self.doLocalize)
        self.btnMask.clicked.connect(self.onMask)
        self.btnLayer.clicked.connect(self.onLayer)

        self.MultiPolygonLayerId = None
        self.LineLayerId = None
        self.PointLayerId = None

        try:
            self.cbExtent.setChecked(self.plugin.limitSearchToExtent)
        except:
            self.cbExtent.setChecked(self.plugin.limitSearchToExtent)

        self.currentExtent = self.plugin.canvas.extent()

        self.tableResult.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents)

        try:
            self.editSearch.setText(self.plugin.lastSearch)
        except:
            pass

        try:
            if self.plugin.localiseOnStartup:
                self.doLocalize()
        except Exception as e:
            for m in e.args:
                QgsMessageLog.logMessage(m, 'Extensions')
            pass

        self.nominatim_networkAccessManager = QgsNetworkAccessManager.instance()
Ejemplo n.º 18
0
    def __init__(self, parent, viewwidget):
        QDockWidget.__init__(self, "Layers", parent)
        self.viewwidget = viewwidget
        self.parent = parent

        # create the list view
        self.listView = LayerListView()

        # set our item model
        model = LayerItemModel(viewwidget, parent, self)
        self.listView.setModel(model)

        self.setWidget(self.listView)

        # connect so we get told when layers added and removed
        viewwidget.layers.layersChanged.connect(self.layersChanged)
Ejemplo n.º 19
0
    def __init__(self, parent, viewwidget):
        QDockWidget.__init__(self, "Profile", parent)
        self.viewwidget = viewwidget

        # create a new widget that lives in the dock window
        self.dockWidget = QWidget()
        self.mainLayout = QVBoxLayout()

        self.toolBar = QToolBar(self.dockWidget)
        self.setupActions()
        self.setupToolbar()
        self.mainLayout.addWidget(self.toolBar)

        self.plotWidget = plotwidget.PlotLineWidget(self)
        self.mainLayout.addWidget(self.plotWidget)

        self.whitePen = QPen(Qt.white)
        self.whitePen.setWidth(1)
        self.redPen = QPen(Qt.red)
        self.redPen.setWidth(1)
        self.greenPen = QPen(Qt.green)
        self.greenPen.setWidth(1)
        self.bluePen = QPen(Qt.blue)
        self.bluePen.setWidth(1)

        self.distanceLabel = QLabel()
        self.mainLayout.addWidget(self.distanceLabel)

        self.dockWidget.setLayout(self.mainLayout)

        # tell the dock window this is the widget to display
        self.setWidget(self.dockWidget)

        self.resize(400, 200)

        # allow plot scaling to be changed by user
        # Min, Max. None means 'auto'.
        self.plotScaling = (None, None)
        # store the range of the data so we can init plot scale dlg
        self.dataRange = None
        # last polyLine so we can quickly resraw if plot scale changes
        self.lastPolyLine = None

        # connect if the layers have changed and we can close if our layer
        # no longer exists
        self.viewwidget.layers.layersChanged.connect(self.layersChanged)
Ejemplo n.º 20
0
    def __init__(self, parent=None):
        QDockWidget.__init__(self, parent)

        self.setWindowTitle('Commands')

        widget = QWidget(self)
        self.setWidget(widget)
        self.layout = QGridLayout(widget)

        self.spacer = QSpacerItem(1, 1, QSizePolicy.Minimum, QSizePolicy.Expanding)
        self.layout.addItem(self.spacer)

        self.widgets = dict()
        self.widgets[WosActionWidget.WidgetType.ACTION_CORE] = list()
        self.widgets[WosActionWidget.WidgetType.ACTION_ADDON] = list()
        self.widgets[WosActionWidget.WidgetType.COMMAND] = list()
        self.widgets[WosActionWidget.WidgetType.AFTER_SPACER] = list()
Ejemplo n.º 21
0
 def __init__(self, parent):
     QDockWidget.__init__(self)
     self.Parent = parent
     self.Parent = parent.menuBar()
     # ******* Setup the Dictionary for the Tool Bar or other kind of reference
     self.MenuActRef = {'FileAct': 0,
                        'ExitAct': 0}
     # ******* Create the File Menu *******
     self.FileMenu = self.Parent.addMenu('File')
     # ******* Create Exit Menu Items *******
     self.ExitAct = QAction('Quit', self)
     self.ExitAct.setShortcut("Ctrl+Q")
     self.ExitAct.setStatusTip('Close the app.')
     self.ExitAct.triggered.connect(close_app)
     self.MenuActRef['ExitAct'] = self.ExitAct
     # ******* Setup the File Menu *******
     self.FileMenu.addAction(self.ExitAct)
Ejemplo n.º 22
0
    def __init__(self, parent=None):
        QDockWidget.__init__(self, parent)

        self.mode = cCommonGame.LogType.ALL

        self.setWindowTitle('Console')
        self.setMinimumWidth(500)

        widget = QWidget(self)
        self.setWidget(widget)
        layout = QGridLayout(widget)

        self.console = QTextBrowser(self)
        self.console.setReadOnly(True)
        self.console.setOpenLinks(False)
        self.console.anchorClicked.connect(self.url_clicked)
        layout.addWidget(self.console, 0, 0)
Ejemplo n.º 23
0
    def __init__(self, *args, **kwargs):
        QDockWidget.__init__(self, *args, **kwargs)

        self.__expandedWidget = None
        self.__collapsedWidget = None
        self.__expanded = True

        self.__trueMinimumWidth = -1

        self.setFeatures(QDockWidget.DockWidgetClosable | \
                         QDockWidget.DockWidgetMovable)
        self.setAllowedAreas(Qt.LeftDockWidgetArea | Qt.RightDockWidgetArea)

        self.featuresChanged.connect(self.__onFeaturesChanged)
        self.dockLocationChanged.connect(self.__onDockLocationChanged)

        # Use the toolbar horizontal extension button icon as the default
        # for the expand/collapse button
        pm = self.style().standardPixmap(
            QStyle.SP_ToolBarHorizontalExtensionButton)

        # Rotate the icon
        transform = QTransform()
        transform.rotate(180)

        pm_rev = pm.transformed(transform)

        self.__iconRight = QIcon(pm)
        self.__iconLeft = QIcon(pm_rev)

        close = self.findChild(QAbstractButton,
                               name="qt_dockwidget_closebutton")

        close.installEventFilter(self)
        self.__closeButton = close

        self.__stack = AnimatedStackedWidget()

        self.__stack.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Expanding)

        self.__stack.transitionStarted.connect(self.__onTransitionStarted)
        self.__stack.transitionFinished.connect(self.__onTransitionFinished)

        QDockWidget.setWidget(self, self.__stack)

        self.__closeButton.setIcon(self.__iconLeft)
Ejemplo n.º 24
0
 def __init__(self, iface):
     QDockWidget.__init__(self)
     self.iface = iface
     GPSLogger.iface = iface
     self.canvas = self.iface.mapCanvas()
     self.setupUi(self)
     self.setupCustomUi()
     self.connection = GPSConnection(
         self.infoList, self.tvInfoList.model(),
         QgsCoordinateReferenceSystem(
             4326, QgsCoordinateReferenceSystem.EpsgCrsId))
     self.marker = GPSMarker(
         self.canvas,
         path.join(self.pluginPath, 'markers/krzyz w okregu.svg'), self)
     self.path = GPSPath(self.canvas, self)
     self.dataWriter = GPSDataWriter(self)
     self.cmbLayers.setFilters(QgsMapLayerProxyModel.HasGeometry)
     self.cmbLayers.layerChanged.connect(self.dataWriter.changeLayer)
     self.getLeftPoint = GPSGetCanvasPoint(self.canvas, self.btnA)
     self.getLeftPoint.pointSide = 'left'
     self.getRightPoint = GPSGetCanvasPoint(self.canvas, self.btnB)
     self.getRightPoint.pointSide = 'right'
     self.resection = GPSResection(self)
     self.selectedMarker = GPSSelectedMarker(self.canvas)
     self.logger = GPSLogger(self)
     self.lastGpsPoint = None
     self.measureType = None
     self.doIntervalMeasure = False
     self.setMenus()
     self.setProjectCrs()
     self.loadSettings()
     self.setupSignals()
     self.lastPointElevation = None
     self.groups_points = None
     self.groupBox_3.setVisible(False)
     self.pointListLogger = GPSMeasureSave(
         self.logger,
         QSettings().value('gpsTracker/measureSaveInterval', 1, type=int),
         QSettings().value('gpsTracker/measureSave', True, type=bool))
     points = self.pointListLogger.loadMeasure()
     if points:
         groups = list(set([p['group_id'] for p in points]))
         self.addEnclaves(len(groups) - 1)
     self.tvPointList.model().insertRows(points)
     self.tvPointList.scrollToBottom()
Ejemplo n.º 25
0
    def __init__(self, irises, settings, parent=None):
        QDockWidget.__init__(self, "Control panel", parent)
        self.setObjectName("TopLevelControlPanel")
        self._irises = irises
        self._settings = settings

        widget = QWidget(self)
        self.setWidget(widget)
        layout = QHBoxLayout(widget)
        form = QFormLayout()
        layout.addLayout(form)

        freq = self._settings.value('TopLevelControlPanel/tddFrequency', 3.6e9,
                                    float)
        self._handleTddFreqChange(freq)
        tddFrequencyEntry = FreqEntryWidget(widget)
        tddFrequencyEntry.setValue(freq)
        tddFrequencyEntry.valueChanged.connect(self._handleTddFreqChange)
        form.addRow("TDD Frequency", tddFrequencyEntry)

        for dirName, direction in (("Tx controls", SOAPY_SDR_TX),
                                   ("Rx controls", SOAPY_SDR_RX)):
            groupBox = QGroupBox(dirName, widget)
            hbox = QHBoxLayout(groupBox)
            layout.addWidget(groupBox)
            for i, gainName in enumerate(irises[0].listGains(direction, 0)):
                if i % 2 == 0:
                    form = QFormLayout()
                    hbox.addLayout(form)
                value = self._settings.value(
                    'TopLevelControlPanel/%sGain%s' %
                    ('Rx' if direction == SOAPY_SDR_RX else 'Tx', gainName),
                    0.0, float)
                self._handleGainChange(direction, gainName, value)
                edit = QDoubleSpinBox(widget)
                form.addRow(gainName, edit)
                r = irises[0].getGainRange(direction, 0, gainName)
                edit.setRange(r.minimum(), r.maximum())
                if r.step() != 0: edit.setSingleStep(r.step())
                edit.setSuffix(' dB')
                edit.setValue(value)
                edit.valueChanged.connect(
                    functools.partial(self._handleGainChange, direction,
                                      gainName))
Ejemplo n.º 26
0
    def __init__(self, app, parentWindow):
        QDockWidget.__init__(self, parentWindow)
        self.setTitleBarWidget(QWidget())
        self.setAllowedAreas(QtCore.Qt.BottomDockWidgetArea)
        self.setFeatures(QDockWidget.NoDockWidgetFeatures)
        self.setVisible(False)

        banner = f"""Simple Spectra Manipulator console based on IPython, version {spectramanipulator.__version__}. Numpy package was imported as np and matplotlib.pyplot as plt. Three variables are setup:
    item - this is used to interact with spectra in TreeWidget and perform various calculations
    tree_widget - instance of TreeWidget
    main - instance of Main (Main Window)

Enjoy.
        
"""
        Console._instance = self

        # Add console window
        self.console_widget = ConsoleWidget(app, banner)
        self.setWidget(self.console_widget)
Ejemplo n.º 27
0
 def __init__(self,iface):
     QDockWidget.__init__(self)
     self.iface = iface
     GPSLogger.iface = iface
     self.canvas = self.iface.mapCanvas()
     self.setupUi(self)
     self.setupCustomUi()
     self.connection = GPSConnection(self.infoList, self.tvInfoList.model(),
                                     QgsCoordinateReferenceSystem(4326, QgsCoordinateReferenceSystem.EpsgCrsId))
     self.marker = GPSMarker(self.canvas,
                             path.join(self.pluginPath, 'markers/krzyz w okregu.svg'),
                             self)
     self.path = GPSPath(self.canvas, self)
     self.dataWriter = GPSDataWriter(self)
     self.cmbLayers.setFilters( QgsMapLayerProxyModel.HasGeometry )
     self.cmbLayers.layerChanged.connect(self.dataWriter.changeLayer)
     self.getLeftPoint = GPSGetCanvasPoint(self.canvas, self.btnA)
     self.getLeftPoint.pointSide = 'left'
     self.getRightPoint = GPSGetCanvasPoint(self.canvas, self.btnB)
     self.getRightPoint.pointSide = 'right'
     self.resection = GPSResection(self)
     self.selectedMarker = GPSSelectedMarker(self.canvas)
     self.logger = GPSLogger(self)
     self.lastGpsPoint = None
     self.measureType = None
     self.doIntervalMeasure = False
     self.setMenus()
     self.setProjectCrs()
     self.loadSettings()
     self.setupSignals()
     self.lastPointElevation = None
     self.groups_points = None
     self.groupBox_3.setVisible(False)
     self.pointListLogger = GPSMeasureSave(self.logger, QSettings().value('gpsTracker/measureSaveInterval', 1, type=int), QSettings().value('gpsTracker/measureSave', True, type=bool))
     points = self.pointListLogger.loadMeasure()
     if points:
         groups = list(set([ p['group_id'] for p in points ]))
         self.addEnclaves(len(groups)-1)
     self.tvPointList.model().insertRows(points)
Ejemplo n.º 28
0
    def __init__(self, parent):
        QDockWidget.__init__(self, "Vector Query", parent)

        # create a new widget that lives in the dock window
        self.dockWidget = QWidget()
        self.mainLayout = QVBoxLayout()

        self.toolBar = QToolBar(self.dockWidget)
        self.setupActions()
        self.setupToolbar()
        self.mainLayout.addWidget(self.toolBar)

        self.treeWidget = QTreeWidget(self)
        self.treeWidget.setColumnCount(2)
        self.treeWidget.setHeaderLabels(["Field", "Value"])
        self.mainLayout.addWidget(self.treeWidget)

        self.dockWidget.setLayout(self.mainLayout)

        # tell the dock window this is the widget to display
        self.setWidget(self.dockWidget)

        self.resize(400, 400)
Ejemplo n.º 29
0
    def __init__(self, plugin, parent=None):
        QDockWidget.__init__(self, parent=parent)

        try:
            self.setWindowTitle(plugin.mlGetPluginName() + ' trainer editor')
        except:
            self.setWindowTitle('Plugin trainer editor')
        self._mainWidget = QWidget()
        self._plugin = plugin

        self.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Expanding)
        self._mainWidget.setSizePolicy(QSizePolicy.Fixed,
                                       QSizePolicy.Expanding)

        self.mlBuildTrainerEditorMainWidget()

        self.setWidget(self._mainWidget)
        self.setVisible(False)

        self.visibilityChanged.connect(self.mlOnVisibilityChanged)
        self.setFeatures(QDockWidget.DockWidgetClosable)

        self._exclusiveUI = None
Ejemplo n.º 30
0
 def __init__(self):
     QDockWidget.__init__(self)
     self.setWindowTitle('Measure selected features')
     self.widget = QWidget()
     self.setWidget(self.widget)
     self.layout = QGridLayout(self)
     self.widget.setLayout(self.layout)
     #####31-05-21
     self.rad_1 = QRadioButton('Ellipsoidal', self)
     self.rad_2 = QRadioButton('Planimetric', self)
     #####31-05-21
     self.lbl_1 = QLabel('Total selected features', self)
     self.le_total = QLineEdit(self)
     self.le_total.setReadOnly(True)
     self.le_total.setMinimumSize(QSize(450, 25))
     #####24-06-21
     self.cb_units = QComboBox(self)
     self.cb_units.setMinimumSize(QSize(250, 25))
     self.layout.addWidget(self.rad_1, 0, 0, 1, 1, Qt.AlignCenter)
     self.layout.addWidget(self.rad_2, 0, 1, 1, 1, Qt.AlignCenter)
     self.layout.addWidget(self.lbl_1, 0, 2, 1, 1, Qt.AlignRight)
     self.layout.addWidget(self.le_total, 0, 3, 1, 1, Qt.AlignJustify)
     self.layout.addWidget(self.cb_units, 0, 4, 1, 1, Qt.AlignJustify)
    def __init__(self, iface, new_dict, lang, v_points):
        # setup UI and connect the buttons
        QDockWidget.__init__(self)
        self.iface = iface
        self.setupUi(self)
        self.plugin_dir = os.path.dirname(__file__)

        self.new_dict = new_dict
        self.lang = lang
        self.v_points = v_points
        self.canvas = self.iface.mapCanvas()
        self.ok = False
        self.buttonBox.button(QDialogButtonBox.Ok).clicked.connect(
            self.okClick)

        fields = self.v_points.pendingFields()
        self.fields_list = []

        for f in fields:
            self.fields_list.append(f.name())

        self.cmb_xcol.addItems(self.fields_list)
        self.cmb_ycol.addItems(self.fields_list)
Ejemplo n.º 32
0
    def __init__(self, iface, objecttype, project, lang_dict, lang):
        # setup UI and connect the buttons
        QDockWidget.__init__(self)
        self.iface = iface
        self.setupUi(self)

        # get variable references from "GeODinQGIS_Main"
        self.obj_type = objecttype.name
        self.loctype = objecttype.gen_desc
        self.path = project.parent.filepath
        self.dbtype = project.parent.options["connection"]
        self.alias = project.parent.name
        self.project_names = project.name
        self.proj_ID = project.id
        self.plugin_dir = os.path.dirname(__file__)
        self.saveFileFolder = self.plugin_dir + "/tmp/"

        self.lgr = logging.getLogger('GeODinQGIS.NewObject')

        self.lang_dict = lang_dict
        self.lang = lang

        # select whole table row instead of single cell
        self.coord_tab.setSelectionBehavior(QAbstractItemView.SelectRows)

        # some empty lists to store coordinates from map canvas
        self.x_list = []
        self.y_list = []
        self.id_list = []
        self.rows = []
        self.attrs_list = []

        self.shortname = None
        self.easting = None
        self.northing = None

        # reference to the map canvas
        self.canvas = self.iface.mapCanvas()

        # define button signals for vector file management
        self.btn_createshp.clicked.connect(self.createVector)
        self.btn_openshp.clicked.connect(self.openVector)
        self.btn_dragshp.clicked.connect(self.dragVector)

        # set behavior to load an existing vector file from layer registry to coordinate table
        self.open = False
        self.drag = False

        #self.btn_dragshp.setEnabled(False)
        self.btn_geodin.setEnabled(False)
        self.btn_del.setEnabled(False)
        self.btn_desel.setEnabled(False)
        self.cmb_short.setEnabled(True)

        # connect buttons to their functions
        self.btn_geodin.clicked.connect(self.geodin)
        self.btn_close.clicked.connect(self.close)
        self.btn_del.clicked.connect(self.delete)
        self.btn_desel.clicked.connect(self.deselect)
        self.cmb_short.currentIndexChanged.connect(self.shortNameChoose)
        self.cmb_east.currentIndexChanged.connect(self.eastingChoose)
        self.cmb_north.currentIndexChanged.connect(self.northingChoose)

        # manage button icons
        self.btn_createshp.setIcon(
            QIcon(":\plugins\GeODinQGIS\icons\point_create_n.png"))
        self.btn_openshp.setIcon(
            QIcon(":\plugins\GeODinQGIS\icons\point_add_n.png"))
        self.btn_dragshp.setIcon(
            QIcon(":\plugins\GeODinQGIS\icons\point_drag_n.png"))
        self.btn_del.setIcon(QIcon(":\plugins\GeODinQGIS\icons\delete.png"))
        self.btn_geodin.setIcon(QIcon(":\plugins\GeODinQGIS\icons\logo.png"))
        self.btn_desel.setIcon(QIcon(":\plugins\GeODinQGIS\icons\minus.png"))
        self.btn_del.setIconSize(QSize(24, 24))
        self.btn_geodin.setIconSize(QSize(24, 24))
        self.btn_desel.setIconSize(QSize(24, 24))
        self.btn_createshp.setIconSize(QSize(24, 24))
        self.btn_openshp.setIconSize(QSize(24, 24))
        self.btn_dragshp.setIconSize(QSize(24, 24))

        # manage tool tips
        createshp = self.lang_dict.getWord(self.lang, "Create new shape file")
        loadshp = self.lang_dict.getWord(self.lang,
                                         "Load shape file from file system")
        dragshp = self.lang_dict.getWord(self.lang,
                                         "Load shape file from layers panel")

        deleteRow = self.lang_dict.getWord(self.lang, "Delete selected rows")
        deselectRow = self.lang_dict.getWord(self.lang, "Deselect rows")
        openGeodin = self.lang_dict.getWord(self.lang, "Import to GeODin")

        self.btn_createshp.setToolTip(createshp)
        self.btn_openshp.setToolTip(loadshp)
        self.btn_dragshp.setToolTip(dragshp)

        self.btn_del.setToolTip(deleteRow)
        self.btn_desel.setToolTip(deselectRow)
        self.btn_geodin.setToolTip(openGeodin)

        # # set headers for child nodes
        # if self.obj_type == "All Objects":
        # self.le_obtyp.setText("All Objects")

        # else:
        # self.le_obtyp.setText(self.obj_type)

        self.delete = False
        self.editMode = False

        # clear coordinate table
        self.coord_tab.setRowCount(0)

        # decimal places
        self.dp = 8

        #
        self.coord_tab.itemChanged.connect(self.Changed)
        #self.coord_tab.cellClicked.connect(self.clicked)

        self.coord_tab.itemSelectionChanged.connect(self.selectionChanged)

        self.root = QgsProject.instance().layerTreeRoot()
Ejemplo n.º 33
0
 def __init__(self, parent=None, f=QtCore.Qt.WindowFlags()):
     QDockWidget.__init__(self, parent, f)
     self.setupUi(self)