添加状态颜色

This commit is contained in:
hm
2021-06-03 23:01:25 +08:00
parent 0010e2055b
commit 98b0de243d
31 changed files with 2367 additions and 55 deletions
+30 -6
View File
@@ -138,19 +138,40 @@ void StateWidget::setValue(QString s)
bool flag = false;
double value = s.toDouble(&flag);
if(flag)
if(flag)//number
{
for (QMap<double,state>::iterator i = stateMap.begin(); i != stateMap.end(); ++i) {
double last = min;
if(value <= i.key())
for (QMap<QVariant,state>::iterator i = stateMap.begin(); i != stateMap.end(); ++i) {
if((value >= last) &&(value < i.key().toDouble()))
{
setColor(i.value());
break;
}
else if(i == stateMap.end())
last = i.key().toDouble();
if(i == stateMap.end())//overflow is red
{
setColor(i.value());
if((value >= last) &&(value < max))
{
setColor(state::red);
}
}
}
}
else //not a number
{
if(stateMap.keys().contains(s))
{
setColor(stateMap.value(s));
}
else
{
setColor(state::gray);
}
}
}
@@ -166,7 +187,10 @@ void StateWidget::setRange(double m_min,double m_max)
}
}
void StateWidget::setStats(QMap<QVariant, state> l)
{
stateMap = l;
}