Compare commits
34 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c0dd0c6038 | |||
| 0f62863828 | |||
| ab8534c62a | |||
| 9852226d3b | |||
| 434679d9ce | |||
| f229ba2059 | |||
| c06bc4f58e | |||
| 3e5255c55e | |||
| 8ae83b2ea6 | |||
| 49be032511 | |||
| 4b5f911c10 | |||
| 727b48e1c6 | |||
| d997517dc1 | |||
| 68e8da943e | |||
| bf08fbe488 | |||
| f335663b55 | |||
| 9829be0bcd | |||
| 14400488a3 | |||
| 76528ed3c0 | |||
| 9beed3ff90 | |||
| 53a0f6495d | |||
| fee2e64bb3 | |||
| 15394066ed | |||
| 0441a79305 | |||
| 2f0e9aefee | |||
| d148f6777f | |||
| c95afc03b5 | |||
| a830a1a44b | |||
| 952cff5002 | |||
| 681761ca40 | |||
| 20b6749ed4 | |||
| fa33a4479d | |||
| 54b332f69d | |||
| 0ff5ca7b49 |
@@ -113,7 +113,7 @@ class PVGateway(QWidget):
|
||||
1000 / self.notify_freq_hz
|
||||
|
||||
self.notify_unison = bool(notify_unison) and bool(self.notify_freq_hz)
|
||||
|
||||
|
||||
self.parent = parent
|
||||
self.settings = self.parent.settings
|
||||
|
||||
@@ -634,7 +634,7 @@ class PVGateway(QWidget):
|
||||
DAQ may be in BS mode, but channels within DAQ stream that
|
||||
are not BS enabled will be flagged as CA Mode, i.e., CARead
|
||||
'''
|
||||
|
||||
|
||||
_current_qt_dynamic_property = self.qt_dynamic_property_get()
|
||||
|
||||
alarm_severity = daq_pvd.alarmSeverity
|
||||
@@ -708,7 +708,7 @@ class PVGateway(QWidget):
|
||||
|
||||
|
||||
def receive_monitor_dbr_time(self, pvdata, alarm_severity):
|
||||
print("called from gateway", self.pv_name, alarm_severity)
|
||||
print("called from gateway", self.pv_name, alarm_severity, flush=True)
|
||||
pvdata.show()
|
||||
|
||||
def receive_monitor_update(self, value, status, alarm_severity):
|
||||
@@ -765,6 +765,7 @@ class PVGateway(QWidget):
|
||||
'''Callback function to be invoked on change of pv value.
|
||||
cafe.getCache and cafe.set operations permitted within callback.
|
||||
'''
|
||||
|
||||
self.mutex.lock()
|
||||
|
||||
pv_name = pvname
|
||||
@@ -999,7 +1000,6 @@ class PVGateway(QWidget):
|
||||
self._qt_readback_color_mode()
|
||||
#self.setStatusTip(self.status_tip)
|
||||
|
||||
|
||||
elif self.qt_object_name == self.PV_CONTROLLER:
|
||||
if self.color_mode == self.ACT_ON_BEAM:
|
||||
#self.setStatusTip("PV setting acts directly on beam")
|
||||
@@ -1008,7 +1008,6 @@ class PVGateway(QWidget):
|
||||
self.color_mode = self.NOT_ACT_ON_BEAM
|
||||
#self.setStatusTip("PV setting does not influence beam")
|
||||
|
||||
|
||||
#self._qt_property_selected =
|
||||
self._qt_dynamic_property_set(self.color_mode)
|
||||
|
||||
|
||||
1696
pvgateway.py-
1696
pvgateway.py-
File diff suppressed because it is too large
Load Diff
1910
pvgateway.py:2.9
1910
pvgateway.py:2.9
File diff suppressed because it is too large
Load Diff
170
pvwidgets.py
170
pvwidgets.py
@@ -43,7 +43,7 @@ class QTaggedLineEdit(QWidget):
|
||||
self.line_edit.setFixedHeight(24)
|
||||
font = QFont("sans serif", 16)
|
||||
fm = QFontMetricsF(font)
|
||||
self.line_edit.setMaximumWidth(fm.width(self.parameter)+20)
|
||||
self.line_edit.setMaximumWidth(int(fm.width(self.parameter)+20))
|
||||
self.label.setBuddy(self.line_edit)
|
||||
layout = QBoxLayout(
|
||||
QBoxLayout.LeftToRight if position == "LEFT" else \
|
||||
@@ -129,8 +129,8 @@ class CAQLineEdit(QLineEdit, PVGateway):
|
||||
fm = QFontMetricsF(QFont("Sans Serif", 10))
|
||||
qrect = fm.boundingRect(self.suggested_text)
|
||||
_width_scaling_factor = 1.15
|
||||
self.setFixedHeight((fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(((qrect.width()) * _width_scaling_factor))
|
||||
self.setFixedHeight(int(fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(int(qrect.width() * _width_scaling_factor))
|
||||
|
||||
if self.pv_within_daq_group:
|
||||
self.qt_property_initial_values(qt_object_name=self.PV_DAQ_CA)
|
||||
@@ -204,9 +204,9 @@ class CAQLabel(QLabel, PVGateway):
|
||||
fm = QFontMetricsF(QFont("Sans Serif", 10))
|
||||
qrect = fm.boundingRect(self.suggested_text)
|
||||
_width_scaling_factor = 1.15
|
||||
|
||||
self.setFixedHeight((fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth((qrect.width() * _width_scaling_factor))
|
||||
|
||||
self.setFixedHeight(int(fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(int(qrect.width() * _width_scaling_factor))
|
||||
|
||||
if self.pv_within_daq_group:
|
||||
self.qt_property_initial_values(qt_object_name=self.PV_DAQ_CA)
|
||||
@@ -468,8 +468,8 @@ class CAQMessageButton(QPushButton, PVGateway):
|
||||
_width_scaling_factor = 1.0
|
||||
|
||||
self.setText(self.msg_label)
|
||||
self.setFixedHeight((fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth((qrect.width() * _width_scaling_factor))
|
||||
self.setFixedHeight(int(fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(int(qrect.width() * _width_scaling_factor))
|
||||
|
||||
self.qt_property_initial_values(qt_object_name=self.PV_CONTROLLER)
|
||||
|
||||
@@ -539,12 +539,14 @@ class CAQTextEntry(QLineEdit, PVGateway):
|
||||
trigger_monitor = Signal(object, int)
|
||||
trigger_connect = Signal(int, str, int)
|
||||
|
||||
def __init__(self, parent=None, pv_name: str = "", monitor_callback=None,
|
||||
def __init__(self, parent=None, pv_name: str="", monitor_callback=None,
|
||||
pv_within_daq_group: bool = False, color_mode=None,
|
||||
show_units=False, prefix: str = "", suffix: str = ""):
|
||||
show_units=False, prefix: str="", suffix: str="",
|
||||
precision: int=0):
|
||||
super().__init__(parent, pv_name, monitor_callback, pv_within_daq_group,
|
||||
color_mode, show_units, prefix, suffix,
|
||||
connect_callback=self.py_connect_callback)
|
||||
connect_callback=self.py_connect_callback,
|
||||
precision=precision)
|
||||
|
||||
self.is_initialize_complete() #waits a fraction of a second
|
||||
|
||||
@@ -564,8 +566,18 @@ class CAQTextEntry(QLineEdit, PVGateway):
|
||||
@Slot(int, int, int)
|
||||
@Slot(float, int, int)
|
||||
def receive_monitor_update(self, value, status, alarm_severity):
|
||||
#print ("FONT-1", self.font().pixelSize(), value)
|
||||
#print ("FONT-1", self.font().pointSize(), value)
|
||||
#self.setFont(QFont("Sans Serif", 8))
|
||||
#QLineEdit.setFont(self, QFont("Sans Serif", 8))
|
||||
#self.font().setPixelSize(12)
|
||||
#QLineEdit.font().setPixelSize(8)
|
||||
|
||||
PVGateway.receive_monitor_update(self, value, status, alarm_severity)
|
||||
|
||||
#self.font().setPixelSize(12)
|
||||
#print ("FONT-3", self.font().pixelSize(), value)
|
||||
#print ("FONT-3", self.font().pointSize(), value)
|
||||
|
||||
@Slot(int, str, int)
|
||||
def receive_connect_update(self, handle: int, pv_name: str, status: int):
|
||||
'''Triggered by connect signal'''
|
||||
@@ -573,14 +585,20 @@ class CAQTextEntry(QLineEdit, PVGateway):
|
||||
|
||||
def configure_widget(self):
|
||||
self.setFocusPolicy(Qt.StrongFocus)
|
||||
|
||||
fm = QFontMetricsF(QFont("Sans Serif", 12))
|
||||
#self.setFont(QFont("Sans Serif", 12))
|
||||
#QLineEdit.setFont(self, QFont("Sans Serif", 8))
|
||||
#f = QFont("Sans Serif")
|
||||
#f.setPixelSize(11)
|
||||
#self.setFont(f)
|
||||
#fm = QFontMetricsF(f)
|
||||
#As for CAQLabel
|
||||
QLineEdit.setFont(self, QFont("Sans Serif", 12))
|
||||
fm = QFontMetricsF(QFont("Sans Serif", 9))
|
||||
qrect = fm.boundingRect(self.suggested_text)
|
||||
|
||||
_width_scaling_factor = 1.15
|
||||
|
||||
self.setFixedHeight((fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(((qrect.width()+10) * _width_scaling_factor))
|
||||
_width_scaling_factor = 1.2
|
||||
|
||||
self.setFixedHeight(int(fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(int(qrect.width()+20 * _width_scaling_factor))
|
||||
|
||||
self.qt_property_initial_values(qt_object_name=self.PV_CONTROLLER)
|
||||
|
||||
@@ -598,7 +616,7 @@ class CAQTextEntry(QLineEdit, PVGateway):
|
||||
else:
|
||||
valStr = ("{: .%sf}" % self.precision)
|
||||
strText = valStr.format(round(val, self.precision))
|
||||
print(strText, " precision ", self.precision)
|
||||
#print(strText, " precision ", self.precision)
|
||||
self.setText(strText)
|
||||
else:
|
||||
#Do this for TextInfo cache
|
||||
@@ -608,6 +626,9 @@ class CAQTextEntry(QLineEdit, PVGateway):
|
||||
def setText(self, value):
|
||||
QLineEdit.setText(self, value)
|
||||
self.currentText = self.text()
|
||||
#print ("FONT-2", self.font().pixelSize(), value)
|
||||
#print ("FONT-2", self.font().pointSize(), value)
|
||||
|
||||
|
||||
def enterEvent(self, event):
|
||||
if self.pv_info is not None:
|
||||
@@ -643,7 +664,7 @@ class CAQTextEntry(QLineEdit, PVGateway):
|
||||
|
||||
|
||||
class CAQSpinBox(QSpinBox, PVGateway):
|
||||
'''Channel access enabled QTextEntry widget'''
|
||||
'''Channel access enabled QSpinBox widget'''
|
||||
trigger_monitor_float = Signal(float, int, int)
|
||||
trigger_monitor_int = Signal(int, int, int)
|
||||
trigger_monitor_str = Signal(str, int, int)
|
||||
@@ -712,8 +733,8 @@ class CAQSpinBox(QSpinBox, PVGateway):
|
||||
qrect = fm.boundingRect(_suggested_text)
|
||||
_width_scaling_factor = 1.0
|
||||
|
||||
self.setFixedHeight((fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(((qrect.width()) * _width_scaling_factor))
|
||||
self.setFixedHeight(int(fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(int(qrect.width() * _width_scaling_factor))
|
||||
|
||||
self.qt_property_initial_values(qt_object_name=self.PV_CONTROLLER)
|
||||
|
||||
@@ -933,8 +954,8 @@ class CAQDoubleSpinBox(QDoubleSpinBox, PVGateway):
|
||||
|
||||
_width_scaling_factor = 1.15
|
||||
|
||||
self.setFixedHeight((fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(((qrect.width()) * _width_scaling_factor))
|
||||
self.setFixedHeight(int(fm.lineSpacing()*1.8))
|
||||
self.setFixedWidth(int(qrect.width() * _width_scaling_factor))
|
||||
|
||||
self.qt_property_initial_values(qt_object_name=self.PV_CONTROLLER)
|
||||
|
||||
@@ -1211,7 +1232,7 @@ class CAQTableWidget(QTableWidget):
|
||||
|
||||
|
||||
def widget_update(self):
|
||||
|
||||
""" Called when self.notif_unison is True """
|
||||
for _row, pvgate in enumerate(self.pv_gateway):
|
||||
|
||||
if not pvgate.notify_unison:
|
||||
@@ -1229,6 +1250,8 @@ class CAQTableWidget(QTableWidget):
|
||||
|
||||
#if timestamps the same - then skip
|
||||
_value = _pvd.value[0]
|
||||
if self.scale_factor != 1:
|
||||
_value = _value * self.scale_factor
|
||||
_value = pvgate.format_display_value(_value)
|
||||
|
||||
qtwi = QTableWidgetItem(str(_value)+ " ")
|
||||
@@ -1242,8 +1265,8 @@ class CAQTableWidget(QTableWidget):
|
||||
|
||||
self.setItem(_row, val_col_no,
|
||||
QTableWidgetItem(qtwi))
|
||||
self.item(_row, val_col_no).setTextAlignment(Qt.AlignRight |
|
||||
Qt.AlignVCenter)
|
||||
self.item(_row, val_col_no).setTextAlignment(
|
||||
Qt.AlignmentFlag(Qt.AlignRight|Qt.AlignVCenter))
|
||||
|
||||
_ts_date = _pvd.tsDateAsString
|
||||
_ts_str_len = len(_ts_date)
|
||||
@@ -1304,6 +1327,8 @@ class CAQTableWidget(QTableWidget):
|
||||
|
||||
self.item(_row, val_col_no).setBackground(
|
||||
QColor(pvgate.bg_readback))
|
||||
#self.item(_row, val_col_no).setBackground(
|
||||
# QColor('#aeae66'))
|
||||
if self.show_timestamp:
|
||||
self.item(_row, ts_col_no).setBackground(
|
||||
QColor(pvgate.bg_readback))
|
||||
@@ -1382,7 +1407,7 @@ class CAQTableWidget(QTableWidget):
|
||||
self.notify_freq_hz = abs(notify_freq_hz)
|
||||
self.notify_freq_hz_default = self.notify_freq_hz
|
||||
self.notify_milliseconds = 0 if self.notify_freq_hz == 0 else \
|
||||
1000 / self.notify_freq_hz
|
||||
int(1000 / self.notify_freq_hz)
|
||||
|
||||
self.notify_unison = bool(notify_unison) and bool(self.notify_freq_hz)
|
||||
|
||||
@@ -1435,6 +1460,7 @@ class CAQTableWidget(QTableWidget):
|
||||
connect_triggers=False, notify_freq_hz=self.notify_freq_hz,
|
||||
notify_unison=self.notify_unison, precision=self.precision)
|
||||
|
||||
|
||||
self.pv_gateway[i].is_initialize_complete()
|
||||
self.pv_gateway[i].trigger_connect.connect(
|
||||
self.receive_connect_update)
|
||||
@@ -1554,7 +1580,7 @@ class CAQTableWidget(QTableWidget):
|
||||
time.sleep(self.set_delay)
|
||||
##self.standby_value_button.setEnabled(False)
|
||||
#QApplication.sendPostedEvents()
|
||||
QApplication.processEvents(QEventLoop.AllEvents, 1.0)
|
||||
QApplication.processEvents(QEventLoop.AllEvents, 1)
|
||||
|
||||
if status != self.cyca.ICAFE_NORMAL:
|
||||
_mess = ("The following devices reported an error " +
|
||||
@@ -1631,7 +1657,7 @@ class CAQTableWidget(QTableWidget):
|
||||
if status_list[i] != self.cyca.ICAFE_NORMAL:
|
||||
status = status_list[i]
|
||||
time.sleep(self.set_delay)
|
||||
QApplication.processEvents(QEventLoop.AllEvents, 1.0)
|
||||
QApplication.processEvents(QEventLoop.AllEvents, 1)
|
||||
|
||||
if status != self.cyca.ICAFE_NORMAL:
|
||||
_mess = ("The following device(s) reported an error " +
|
||||
@@ -1766,8 +1792,8 @@ class CAQTableWidget(QTableWidget):
|
||||
_f.setPointSize(8)
|
||||
qtwi.setFont(_f)
|
||||
self.setItem(_row, _column_no, qtwi)
|
||||
self.item(_row, _column_no).setTextAlignment(Qt.AlignRight |
|
||||
Qt.AlignVCenter)
|
||||
self.item(_row, _column_no).setTextAlignment(
|
||||
Qt.AlignmentFlag(Qt.AlignRight|Qt.AlignVCenter))
|
||||
|
||||
|
||||
def set_init_values(self, values):
|
||||
@@ -1786,9 +1812,9 @@ class CAQTableWidget(QTableWidget):
|
||||
_f.setPointSize(8)
|
||||
qtwi.setFont(_f)
|
||||
self.setItem(_row, _column_no, qtwi)
|
||||
self.item(_row, _column_no).setTextAlignment(Qt.AlignRight |
|
||||
Qt.AlignVCenter)
|
||||
|
||||
self.item(_row, _column_no).setTextAlignment(
|
||||
Qt.AlignmentFlag(Qt.AlignRight|Qt.AlignVCenter))
|
||||
|
||||
|
||||
def update_init_values(self):
|
||||
_start = 0
|
||||
@@ -1800,8 +1826,7 @@ class CAQTableWidget(QTableWidget):
|
||||
return
|
||||
|
||||
for _row in range(_start, _end):
|
||||
|
||||
|
||||
|
||||
_handle = self.pv_gateway[_row].handle
|
||||
_value = self.pv_gateway[_row].cafe.getCache(_handle)
|
||||
|
||||
@@ -1816,9 +1841,10 @@ class CAQTableWidget(QTableWidget):
|
||||
qtwi.setFont(_f)
|
||||
self.setItem(_row, _column_no, qtwi)
|
||||
|
||||
self.item(_row, _column_no).setTextAlignment(Qt.AlignRight |
|
||||
Qt.AlignVCenter)
|
||||
|
||||
self.item(_row, _column_no).setTextAlignment(
|
||||
Qt.AlignmentFlag(Qt.AlignRight|Qt.AlignVCenter))
|
||||
|
||||
|
||||
|
||||
def configure_widget(self):
|
||||
|
||||
@@ -1858,15 +1884,15 @@ class CAQTableWidget(QTableWidget):
|
||||
f.setPointSize(8)
|
||||
qtwt.setFont(f)
|
||||
self.setItem(i, _pv_column, qtwt)
|
||||
self.item(i, _pv_column).setTextAlignment(Qt.AlignHCenter |
|
||||
Qt.AlignVCenter)
|
||||
self.item(i, _pv_column).setTextAlignment(
|
||||
Qt.AlignmentFlag(Qt.AlignHCenter|Qt.AlignVCenter))
|
||||
else:
|
||||
istart = 0
|
||||
|
||||
for i_column in range(istart, self.no_columns-1):
|
||||
self.setItem(i, i_column, QTableWidgetItem(str("")))
|
||||
self.item(i, i_column).setTextAlignment(Qt.AlignHCenter |
|
||||
Qt.AlignVCenter)
|
||||
self.item(i, i_column).setTextAlignment(
|
||||
Qt.AlignmentFlag(Qt.AlignHCenter|Qt.AlignVCenter))
|
||||
self.pv2item_dict[self.pv_gateway[i]] = i
|
||||
|
||||
cb_item = QTableWidgetItem()
|
||||
@@ -1899,7 +1925,8 @@ class CAQTableWidget(QTableWidget):
|
||||
if 'PV' in self.columns_dict:
|
||||
self.setCellWidget(len(self.pv_gateway), 0, self.init_widget)
|
||||
else:
|
||||
self.setCellWidget(len(self.pv_gateway), self.columns_dict['Init'], self.init_widget)
|
||||
self.setCellWidget(len(self.pv_gateway),
|
||||
self.columns_dict['Init'], self.init_widget)
|
||||
|
||||
self.restore_widget = QWidget()
|
||||
self.restore_layout = QHBoxLayout(self.restore_widget)
|
||||
@@ -1942,7 +1969,8 @@ class CAQTableWidget(QTableWidget):
|
||||
_standby_layout.setAlignment(Qt.AlignCenter)
|
||||
_standby_layout.setContentsMargins(1, 1, 0, 0)
|
||||
_standby_widget.setLayout(_standby_layout)
|
||||
self.setCellWidget(len(self.pv_gateway), self.columns_dict['Standby'], _standby_widget)
|
||||
self.setCellWidget(len(self.pv_gateway),
|
||||
self.columns_dict['Standby'], _standby_widget)
|
||||
|
||||
|
||||
#Do not display no for last row (Reconnect button)
|
||||
@@ -1957,7 +1985,7 @@ class CAQTableWidget(QTableWidget):
|
||||
f = self.reconnect_button.font()
|
||||
|
||||
if 'Timestamp' in self.columns_dict.keys():
|
||||
f.setPixelSize(13)
|
||||
f.setPixelSize(11) #previous 13
|
||||
self.reconnect_button.setFixedWidth(100)
|
||||
else:
|
||||
f.setPixelSize(11) #6
|
||||
@@ -2050,8 +2078,8 @@ class CAQTableWidget(QTableWidget):
|
||||
|
||||
for i_column in range(istart, self.no_columns-2):
|
||||
self.item(_row, i_column).setForeground(QColor("#000000"))
|
||||
self.item(_row, i_column).setTextAlignment(Qt.AlignRight |
|
||||
Qt.AlignVCenter)
|
||||
self.item(_row, i_column).setTextAlignment(
|
||||
Qt.AlignmentFlag(Qt.AlignRight|Qt.AlignVCenter))
|
||||
|
||||
self.item(_row, self.columns_dict['Value']).setBackground(
|
||||
QColor("#ffffff"))
|
||||
@@ -2084,15 +2112,26 @@ class CAQTableWidget(QTableWidget):
|
||||
if self.scale_factor != 1:
|
||||
value = value * self.scale_factor
|
||||
_value = self.pv_gateway[_row].format_display_value(value)
|
||||
|
||||
#if 'QMD10' in self.pv_gateway[_row].pv_name:
|
||||
# print(_value + " from widgets.py" + self.pv_gateway[_row].pv_name)
|
||||
|
||||
|
||||
qtwi = QTableWidgetItem(str(_value) + " ")
|
||||
f = qtwi.font()
|
||||
f.setPointSize(8)
|
||||
qtwi.setFont(f)
|
||||
qtwi.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled | Qt.ItemIsEditable)
|
||||
#qtwi.setEditTriggers(QAbstractItemView.AllEditTriggers)
|
||||
self.setItem(_row, self.columns_dict['Value'], qtwi)
|
||||
#self.item(_row, self.columns_dict['Value']).setFlags(
|
||||
#Qt.ItemIsSelectable | Qt.ItemIsEnabled | Qt.ItemIsEditable)
|
||||
#self.item(_row, self.columns_dict['Value']).setEditTriggers(
|
||||
#QAbstractItemView.AllEditTriggers)
|
||||
self.item(_row, self.columns_dict['Value']).setTextAlignment(
|
||||
Qt.AlignRight | Qt.AlignVCenter)
|
||||
|
||||
Qt.AlignmentFlag(Qt.AlignRight|Qt.AlignVCenter))
|
||||
|
||||
|
||||
if 'Timestamp' in self.columns_dict.keys():
|
||||
_handle = self.pv_gateway[_row].handle
|
||||
_pvd = self.pv_gateway[_row].cafe.getPVCache(_handle)
|
||||
@@ -2128,6 +2167,8 @@ class CAQTableWidget(QTableWidget):
|
||||
|
||||
_prop = self.pv_gateway[_row].qt_dynamic_property_get()
|
||||
|
||||
|
||||
|
||||
if _prop == self.pv_gateway[_row].READBACK_ALARM:
|
||||
|
||||
if alarm_severity == self.pv_gateway[_row].cyca.SEV_MAJOR:
|
||||
@@ -2172,6 +2213,11 @@ class CAQTableWidget(QTableWidget):
|
||||
elif _prop == self.pv_gateway[_row].READBACK_STATIC:
|
||||
self.item(_row, self.columns_dict['Value']).setBackground(
|
||||
QColor(self.pv_gateway[_row].bg_readback))
|
||||
#self.item(_row, self.columns_dict['Value']).setBackground(
|
||||
# QColor("#ffffe1"))
|
||||
#self.item(_row, self.columns_dict['Value']).setFlags(
|
||||
#Qt.ItemIsSelectable | Qt.ItemIsEnabled | Qt.ItemIsEditable)
|
||||
|
||||
if 'Timestamp' in self.columns_dict.keys():
|
||||
self.item(_row, self.columns_dict['Timestamp']).setBackground(
|
||||
QColor(self.pv_gateway[_row].bg_readback))
|
||||
@@ -2555,7 +2601,7 @@ class QResultsWidget:
|
||||
qlabel.setFont(_font)
|
||||
qlabel.setStyleSheet(("QLabel{color:black;" +
|
||||
"margin:0px; padding:2px;}"))
|
||||
qlabel.setFixedWidth(qrect1.width() * _width_scaling_factor)
|
||||
qlabel.setFixedWidth(int(qrect1.width() * _width_scaling_factor))
|
||||
qlabel.setFixedHeight(_widget_height)
|
||||
|
||||
qle.setFocusPolicy(Qt.NoFocus)
|
||||
@@ -2564,7 +2610,7 @@ class QResultsWidget:
|
||||
"background-color: lightgray;" +
|
||||
"qproperty-readOnly: true;" +
|
||||
"margin:0px; padding:2px;}"))
|
||||
qle.setFixedWidth(qrect2.width() * _width_scaling_factor_le)
|
||||
qle.setFixedWidth(int(qrect2.width() * _width_scaling_factor_le))
|
||||
qle.setFixedHeight(_widget_height)
|
||||
qle.setAlignment(Qt.AlignRight)
|
||||
|
||||
@@ -2629,13 +2675,13 @@ class QResultsWidget:
|
||||
table.resizeColumnsToContents()
|
||||
table.resizeRowsToContents()
|
||||
|
||||
table.setFixedHeight((fm.lineSpacing() * _factor * len(
|
||||
table.setFixedHeight(int(fm.lineSpacing() * _factor * len(
|
||||
self.table_dict)) + fm.lineSpacing()*2)
|
||||
|
||||
table.setFixedWidth(((qrect.width()) * _width_scaling_factor))
|
||||
table.setFixedWidth(int(qrect.width() * _width_scaling_factor))
|
||||
|
||||
_vbox2.addWidget(table)
|
||||
_vbox2.setAlignment(Qt.AlignCenter|Qt.AlignTop)
|
||||
_vbox2.setAlignment(Qt.AlignmentFlag(Qt.AlignCenter|Qt.AlignTop))
|
||||
_vbox2_widget.setLayout(_vbox2)
|
||||
|
||||
_vbox.addWidget(_vbox2_widget)
|
||||
@@ -2643,9 +2689,9 @@ class QResultsWidget:
|
||||
self._group_box.setLayout(_vbox)
|
||||
self._group_box.setContentsMargins(20, 20, 20, 20)
|
||||
self._group_box.setAlignment(Qt.AlignTop)
|
||||
self._group_box.setFixedHeight(
|
||||
table.height() + (_widget_height*len(self.summary_dict)))
|
||||
self._group_box.setFixedWidth(table.width() + 20)
|
||||
self._group_box.setFixedHeight(int(
|
||||
table.height() + (_widget_height*len(self.summary_dict))))
|
||||
self._group_box.setFixedWidth(int(table.width() + 20))
|
||||
return self._group_box
|
||||
|
||||
|
||||
@@ -2679,14 +2725,14 @@ class QResultsTableWidget():
|
||||
table.setFixedHeight(400)
|
||||
|
||||
_vbox2.addWidget(table)
|
||||
_vbox2.setAlignment(Qt.AlignCenter|Qt.AlignTop)
|
||||
_vbox2.setAlignment(Qt.AlignmentFlag(Qt.AlignCenter|Qt.AlignTop))
|
||||
_vbox2_widget.setLayout(_vbox2)
|
||||
|
||||
self._group_box.setLayout(_vbox2)
|
||||
self._group_box.setContentsMargins(20, 20, 20, 20)
|
||||
self._group_box.setAlignment(Qt.AlignTop)
|
||||
|
||||
self._group_box.setFixedWidth(table.width() + 20)
|
||||
self._group_box.setFixedWidth(int(table.width() + 20))
|
||||
return self._group_box
|
||||
|
||||
|
||||
|
||||
3142
pvwidgets.py-
3142
pvwidgets.py-
File diff suppressed because it is too large
Load Diff
3461
pvwidgets.py:2.9
3461
pvwidgets.py:2.9
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user