1
0
forked from IPKM/nmreval

Binning and Tg (#85)

add binning; determine Tg of DSC;

closes #60; part of #61

Co-authored-by: Dominik Demuth <dominik.demuth@physik.tu-darmstadt.de>
Reviewed-on: IPKM/nmreval#85
This commit is contained in:
2023-06-20 17:13:13 +00:00
parent 22f8bc80ed
commit a26595695c
26 changed files with 1643 additions and 353 deletions

View File

@ -1,3 +1,5 @@
from typing import Any
from numpy import inf
from nmreval.utils.text import convert
@ -404,3 +406,21 @@ class ElideComboBox(QtWidgets.QComboBox):
opt.currentText = painter.fontMetrics().elidedText(opt.currentText, QtCore.Qt.ElideRight, rect.width())
painter.drawControl(QtWidgets.QStyle.CE_ComboBoxLabel, opt)
class CheckCombobox(QtWidgets.QComboBox):
def addItem(self, text: str, userData: Any=None) -> None:
super().addItem(text, userData=userData)
item = self.model().item(self.count()-1)
item.setFlags(QtCore.Qt.ItemIsEnabled | QtCore.Qt.ItemIsUserCheckable)
item.setCheckState(QtCore.Qt.Checked)
def addItems(self, text):
for text_i in text:
self.addItem(text_i)
def isChecked(self, idx: int) -> bool:
return bool(self.model().item(idx).checkState())

View File

@ -174,6 +174,7 @@ class PlotItem(PlotDataItem):
pen = self.opts['pen']
if isinstance(pen, tuple):
self.opts['linecolor'] = pen
self.opts['pen'] = mkPen(color=pen)
else:
c = pen.color()
self.opts['linecolor'] = c.red(), c.green(), c.blue()
@ -279,7 +280,7 @@ class PlotItem(PlotDataItem):
else:
self.scatter.hide()
def set_symbol(self, symbol=None, size=None, color=None):
def set_symbol(self, *, symbol=None, size=None, color=None):
if symbol is not None:
if isinstance(symbol, int):
self.setSymbol(SymbolStyle(symbol).to_str())
@ -313,14 +314,13 @@ class PlotItem(PlotDataItem):
self.opts['pen'] = pen
self.updateItems()
def set_line(self, style=None, width=None, color=None):
def set_line(self, *, style=None, width=None, color=None):
pen = self.opts['pen']
if pen is None:
pen = mkPen(style=QtCore.Qt.NoPen)
if width is not None:
pen.setWidthF(width)
if style is not None:
if isinstance(style, LineStyle):
style = style.value