Ejemplo n.º 1
0
    def __init__(self,
                 parent,
                 init_channel=None,
                 config_name=None,
                 edit_mode=False):
        super(PyDMAlarmTree, self).__init__()

        QTreeView.__init__(self, parent)
        PyDMWritableWidget.__init__(self)

        self.setup_ui()

        self._nodes = []

        self.config_name = config_name

        self.tree_model = AlarmTreeModel(self)
        self.setModel(self.tree_model)
        self.edit_mode = edit_mode

        self.setContextMenuPolicy(Qt.CustomContextMenu)

        if not edit_mode:
            self.customContextMenuRequested.connect(self._open_menu)

        self.expandAll()
Ejemplo n.º 2
0
    def ctrl_limit_changed(self, which, new_limit):
        """Set new upper/lower limits as maximum/minimum values."""
        PyDMWritableWidget.ctrl_limit_changed(self, which, new_limit)

        if which == "UPPER":
            self.setMaximum(self._upper_ctrl_limit)
        else:
            self.setMinimum(self._lower_ctrl_limit)
Ejemplo n.º 3
0
 def value_changed(self, value):
     self.valueBeingSet = True
     if isinstance(value, _np.ndarray):
         self.setValue(value[self._index])
     else:
         self.setValue(value)
     self.valueBeingSet = False
     PyDMWritableWidget.value_changed(self, value)
Ejemplo n.º 4
0
 def __init__(self, parent=None, init_channel=None, items=None):
     """Init."""
     QComboBox.__init__(self, parent)
     PyDMWritableWidget.__init__(self, init_channel=init_channel)
     self._has_items = False
     self.set_items(items)
     self.currentTextChanged.connect(self._send_value)
     self.setContextMenuPolicy(Qt.DefaultContextMenu)
     self.contextMenuEvent = self.open_context_menu
Ejemplo n.º 5
0
    def __init__(self, parent=None, orientation=Qt.Horizontal,
                 init_channel=None):
        """Init."""
        QDoubleScrollBar.__init__(self, orientation, parent)
        PyDMWritableWidget.__init__(self, init_channel)

        self.setFocusPolicy(Qt.StrongFocus)
        self.setInvertedControls(False)

        self.setTracking(True)
        self.actionTriggered.connect(self.send_value)
Ejemplo n.º 6
0
    def ctrl_limit_changed(self, which, new_limit):
        """
        Callback invoked when the Channel receives new control limit
        values.

        Parameters
        ----------
        which : str
            Which control limit was changed. "UPPER" or "LOWER"
        new_limit : float
            New value for the control limit
        """
        PyDMWritableWidget.ctrl_limit_changed(self, which, new_limit)
        self.update_limits()
Ejemplo n.º 7
0
    def __init__(self, parent=None, init_channel=None, variety_metadata=None,
                 ophyd_signal=None):

        self._display_text = None
        self._encoding = "utf-8"
        self._delimiter = '\n'
        self._ophyd_signal = ophyd_signal
        self._format = 'plain'
        self._raw_value = None

        QtWidgets.QWidget.__init__(self, parent)
        PyDMWritableWidget.__init__(self, init_channel=init_channel)
        # superclasses do *not* support cooperative init:
        # super().__init__(self, parent=parent, init_channel=init_channel)

        self._setup_ui()
        self.variety_metadata = variety_metadata
Ejemplo n.º 8
0
    def __init__(self, parent=None, init_channel=None, invert=False):
        """Initialize all internal states and properties."""
        QFrame.__init__(self, parent)
        PyDMWritableWidget.__init__(self, init_channel=init_channel)

        self._off = 0
        self._on = 1
        self.invert = invert

        self._bit = -1
        self._bit_val = 0
        self.value = 0
        self.clicked.connect(self.send_value)
        self.shape = 0
        self.renderer = QSvgRenderer()

        self._show_confirm_dialog = False
        self._confirm_message = PyDMStateButton.DEFAULT_CONFIRM_MESSAGE
        self._password_protected = False
        self._password = ""
        self._protected_password = ""