Skip to content

Commit 6c70cab

Browse files
committed
Correct simulation displaying in some cases
1 parent a4020ec commit 6c70cab

5 files changed

Lines changed: 58 additions & 63 deletions

File tree

src/controls/outputwidget.cpp

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -169,24 +169,19 @@ QVariant OutputListModel::data(const QModelIndex& index, int role) const
169169
if(itemData.ValueStr.isEmpty())
170170
return _iconSimulationOff;
171171

172-
if(!isItemSimulated(row))
173-
return _iconSimulationOff;
174-
175-
switch(itemData.SimulationIcon)
172+
switch(simulationIcon(row))
176173
{
177-
case SimulationIcon64Bit:
178-
return _iconSimulation64Bit;
179-
174+
case SimulationIcon16Bit:
175+
return _iconSimulation16Bit;
180176
case SimulationIcon32Bit:
181177
return _iconSimulation32Bit;
178+
case SimulationIcon64Bit:
179+
return _iconSimulation64Bit;
182180

183-
case SimulationIcon16Bit:
184-
case SimulationIconNone:
185181
default:
186-
return _iconSimulation16Bit;
182+
return _iconSimulationOff;
187183
}
188184
}
189-
190185
}
191186

192187
return QVariant();
@@ -410,23 +405,23 @@ QModelIndex OutputListModel::find(quint8 deviceId, QModbusDataUnit::RegisterType
410405
}
411406

412407
///
413-
/// \brief OutputListModel::isItemSimulated
408+
/// \brief OutputListModel::simulationIcon
414409
/// \param row
415410
/// \return
416411
///
417-
bool OutputListModel::isItemSimulated(const int row) const
412+
OutputListModel::SimulationIconType OutputListModel::simulationIcon(int row) const
418413
{
419414
const auto mode = _parentWidget->dataDisplayMode();
420-
for(int i = 0; i < static_cast<int>(registersCount(mode)); ++i)
415+
for(int i = 0; i < registersCount(mode); ++i)
421416
{
422417
if(row + i >= rowCount())
423-
return false;
418+
return SimulationIconNone;
424419

425420
if(_mapItems[row + i].Simulated)
426-
return true;
421+
return _mapItems[row + i].SimulationIcon;
427422
}
428423

429-
return false;
424+
return SimulationIconNone;
430425
}
431426

432427
///

src/controls/outputwidget.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ class OutputListModel : public QAbstractListModel
9090
QModelIndex find(quint8 deviceId, QModbusDataUnit::RegisterType type, quint16 addr) const;
9191

9292
private:
93-
bool isItemSimulated(const int row) const;
93+
SimulationIconType simulationIcon(int row) const;
9494

9595
private:
9696
struct ItemData

src/translations/omodsim_ru.ts

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2736,77 +2736,77 @@ Script.onInit(()=&gt;{
27362736
<context>
27372737
<name>OutputWidget</name>
27382738
<message>
2739-
<location filename="../controls/outputwidget.cpp" line="1115"/>
2739+
<location filename="../controls/outputwidget.cpp" line="1110"/>
27402740
<source>Set Value of %1</source>
27412741
<translation>Записать значение по адресу %1</translation>
27422742
</message>
27432743
<message>
2744-
<location filename="../controls/outputwidget.cpp" line="1121"/>
2744+
<location filename="../controls/outputwidget.cpp" line="1116"/>
27452745
<source>Add Description</source>
27462746
<translation>Добавить описание</translation>
27472747
</message>
27482748
<message>
2749-
<location filename="../controls/outputwidget.cpp" line="1121"/>
2749+
<location filename="../controls/outputwidget.cpp" line="1116"/>
27502750
<source>Edit Description</source>
27512751
<translation>Редактировать описание</translation>
27522752
</message>
27532753
<message>
2754-
<location filename="../controls/outputwidget.cpp" line="1124"/>
2754+
<location filename="../controls/outputwidget.cpp" line="1119"/>
27552755
<source>%1: Enter Description</source>
27562756
<translation>%1: Введите описание</translation>
27572757
</message>
27582758
<message>
2759-
<location filename="../controls/outputwidget.cpp" line="1133"/>
2759+
<location filename="../controls/outputwidget.cpp" line="1128"/>
27602760
<source>Remove Color</source>
27612761
<translation>Удалить цвет</translation>
27622762
</message>
27632763
<message>
2764-
<location filename="../controls/outputwidget.cpp" line="1144"/>
2764+
<location filename="../controls/outputwidget.cpp" line="1139"/>
27652765
<source>Yellow</source>
27662766
<translation>Желтый</translation>
27672767
</message>
27682768
<message>
2769-
<location filename="../controls/outputwidget.cpp" line="1145"/>
2769+
<location filename="../controls/outputwidget.cpp" line="1140"/>
27702770
<source>Cyan</source>
27712771
<translation>Циан</translation>
27722772
</message>
27732773
<message>
2774-
<location filename="../controls/outputwidget.cpp" line="1146"/>
2774+
<location filename="../controls/outputwidget.cpp" line="1141"/>
27752775
<source>Magenta</source>
27762776
<translation>Пурпурный</translation>
27772777
</message>
27782778
<message>
2779-
<location filename="../controls/outputwidget.cpp" line="1147"/>
2779+
<location filename="../controls/outputwidget.cpp" line="1142"/>
27802780
<source>LightGreen</source>
27812781
<translation>Светло-зеленый</translation>
27822782
</message>
27832783
<message>
2784-
<location filename="../controls/outputwidget.cpp" line="1148"/>
2784+
<location filename="../controls/outputwidget.cpp" line="1143"/>
27852785
<source>Orange</source>
27862786
<translation>Оранжевый</translation>
27872787
</message>
27882788
<message>
2789-
<location filename="../controls/outputwidget.cpp" line="1149"/>
2789+
<location filename="../controls/outputwidget.cpp" line="1144"/>
27902790
<source>LightBlue</source>
27912791
<translation>Светло-синий</translation>
27922792
</message>
27932793
<message>
2794-
<location filename="../controls/outputwidget.cpp" line="1150"/>
2794+
<location filename="../controls/outputwidget.cpp" line="1145"/>
27952795
<source>LightGray</source>
27962796
<translation>Светло-серый</translation>
27972797
</message>
27982798
<message>
2799-
<location filename="../controls/outputwidget.cpp" line="1235"/>
2799+
<location filename="../controls/outputwidget.cpp" line="1230"/>
28002800
<source>NOT CONNECTED!</source>
28012801
<translation>НЕ ПОДКЛЮЧЕНО!</translation>
28022802
</message>
28032803
<message>
2804-
<location filename="../controls/outputwidget.cpp" line="1243"/>
2804+
<location filename="../controls/outputwidget.cpp" line="1238"/>
28052805
<source>Invalid Data Length Specified</source>
28062806
<translation>Указана недопустимая длина данных</translation>
28072807
</message>
28082808
<message>
2809-
<location filename="../controls/outputwidget.cpp" line="1290"/>
2809+
<location filename="../controls/outputwidget.cpp" line="1285"/>
28102810
<source>Zoom: %1%</source>
28112811
<translation>Увеличение: %1%</translation>
28122812
</message>

src/translations/omodsim_zh_CN.ts

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2742,77 +2742,77 @@ Script.onInit(()=&gt;{
27422742
<context>
27432743
<name>OutputWidget</name>
27442744
<message>
2745-
<location filename="../controls/outputwidget.cpp" line="1115"/>
2745+
<location filename="../controls/outputwidget.cpp" line="1110"/>
27462746
<source>Set Value of %1</source>
27472747
<translation>将值写入 %1</translation>
27482748
</message>
27492749
<message>
2750-
<location filename="../controls/outputwidget.cpp" line="1121"/>
2750+
<location filename="../controls/outputwidget.cpp" line="1116"/>
27512751
<source>Add Description</source>
27522752
<translation>添加描述</translation>
27532753
</message>
27542754
<message>
2755-
<location filename="../controls/outputwidget.cpp" line="1121"/>
2755+
<location filename="../controls/outputwidget.cpp" line="1116"/>
27562756
<source>Edit Description</source>
27572757
<translation>编辑描述</translation>
27582758
</message>
27592759
<message>
2760-
<location filename="../controls/outputwidget.cpp" line="1124"/>
2760+
<location filename="../controls/outputwidget.cpp" line="1119"/>
27612761
<source>%1: Enter Description</source>
27622762
<translation>%1:输入描述</translation>
27632763
</message>
27642764
<message>
2765-
<location filename="../controls/outputwidget.cpp" line="1133"/>
2765+
<location filename="../controls/outputwidget.cpp" line="1128"/>
27662766
<source>Remove Color</source>
27672767
<translation>去除颜色</translation>
27682768
</message>
27692769
<message>
2770-
<location filename="../controls/outputwidget.cpp" line="1144"/>
2770+
<location filename="../controls/outputwidget.cpp" line="1139"/>
27712771
<source>Yellow</source>
27722772
<translation>黄色的</translation>
27732773
</message>
27742774
<message>
2775-
<location filename="../controls/outputwidget.cpp" line="1145"/>
2775+
<location filename="../controls/outputwidget.cpp" line="1140"/>
27762776
<source>Cyan</source>
27772777
<translation>青色</translation>
27782778
</message>
27792779
<message>
2780-
<location filename="../controls/outputwidget.cpp" line="1146"/>
2780+
<location filename="../controls/outputwidget.cpp" line="1141"/>
27812781
<source>Magenta</source>
27822782
<translation>品红</translation>
27832783
</message>
27842784
<message>
2785-
<location filename="../controls/outputwidget.cpp" line="1147"/>
2785+
<location filename="../controls/outputwidget.cpp" line="1142"/>
27862786
<source>LightGreen</source>
27872787
<translation>浅绿色</translation>
27882788
</message>
27892789
<message>
2790-
<location filename="../controls/outputwidget.cpp" line="1148"/>
2790+
<location filename="../controls/outputwidget.cpp" line="1143"/>
27912791
<source>Orange</source>
27922792
<translation>橙子</translation>
27932793
</message>
27942794
<message>
2795-
<location filename="../controls/outputwidget.cpp" line="1149"/>
2795+
<location filename="../controls/outputwidget.cpp" line="1144"/>
27962796
<source>LightBlue</source>
27972797
<translation>浅蓝色</translation>
27982798
</message>
27992799
<message>
2800-
<location filename="../controls/outputwidget.cpp" line="1150"/>
2800+
<location filename="../controls/outputwidget.cpp" line="1145"/>
28012801
<source>LightGray</source>
28022802
<translation>浅灰色</translation>
28032803
</message>
28042804
<message>
2805-
<location filename="../controls/outputwidget.cpp" line="1235"/>
2805+
<location filename="../controls/outputwidget.cpp" line="1230"/>
28062806
<source>NOT CONNECTED!</source>
28072807
<translation>未连接!</translation>
28082808
</message>
28092809
<message>
2810-
<location filename="../controls/outputwidget.cpp" line="1243"/>
2810+
<location filename="../controls/outputwidget.cpp" line="1238"/>
28112811
<source>Invalid Data Length Specified</source>
28122812
<translation>指定的数据长度无效</translation>
28132813
</message>
28142814
<message>
2815-
<location filename="../controls/outputwidget.cpp" line="1290"/>
2815+
<location filename="../controls/outputwidget.cpp" line="1285"/>
28162816
<source>Zoom: %1%</source>
28172817
<translation>飞涨: %1%</translation>
28182818
</message>

src/translations/omodsim_zh_TW.ts

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2742,77 +2742,77 @@ Script.onInit(()=&gt;{
27422742
<context>
27432743
<name>OutputWidget</name>
27442744
<message>
2745-
<location filename="../controls/outputwidget.cpp" line="1115"/>
2745+
<location filename="../controls/outputwidget.cpp" line="1110"/>
27462746
<source>Set Value of %1</source>
27472747
<translation>將值寫入 %1</translation>
27482748
</message>
27492749
<message>
2750-
<location filename="../controls/outputwidget.cpp" line="1121"/>
2750+
<location filename="../controls/outputwidget.cpp" line="1116"/>
27512751
<source>Add Description</source>
27522752
<translation>添加描述</translation>
27532753
</message>
27542754
<message>
2755-
<location filename="../controls/outputwidget.cpp" line="1121"/>
2755+
<location filename="../controls/outputwidget.cpp" line="1116"/>
27562756
<source>Edit Description</source>
27572757
<translation>編輯描述</translation>
27582758
</message>
27592759
<message>
2760-
<location filename="../controls/outputwidget.cpp" line="1124"/>
2760+
<location filename="../controls/outputwidget.cpp" line="1119"/>
27612761
<source>%1: Enter Description</source>
27622762
<translation>%1:輸入描述</translation>
27632763
</message>
27642764
<message>
2765-
<location filename="../controls/outputwidget.cpp" line="1133"/>
2765+
<location filename="../controls/outputwidget.cpp" line="1128"/>
27662766
<source>Remove Color</source>
27672767
<translation>去除顏色</translation>
27682768
</message>
27692769
<message>
2770-
<location filename="../controls/outputwidget.cpp" line="1144"/>
2770+
<location filename="../controls/outputwidget.cpp" line="1139"/>
27712771
<source>Yellow</source>
27722772
<translation>黃色的</translation>
27732773
</message>
27742774
<message>
2775-
<location filename="../controls/outputwidget.cpp" line="1145"/>
2775+
<location filename="../controls/outputwidget.cpp" line="1140"/>
27762776
<source>Cyan</source>
27772777
<translation>青色</translation>
27782778
</message>
27792779
<message>
2780-
<location filename="../controls/outputwidget.cpp" line="1146"/>
2780+
<location filename="../controls/outputwidget.cpp" line="1141"/>
27812781
<source>Magenta</source>
27822782
<translation>品紅</translation>
27832783
</message>
27842784
<message>
2785-
<location filename="../controls/outputwidget.cpp" line="1147"/>
2785+
<location filename="../controls/outputwidget.cpp" line="1142"/>
27862786
<source>LightGreen</source>
27872787
<translation>淺綠色</translation>
27882788
</message>
27892789
<message>
2790-
<location filename="../controls/outputwidget.cpp" line="1148"/>
2790+
<location filename="../controls/outputwidget.cpp" line="1143"/>
27912791
<source>Orange</source>
27922792
<translation>橘子</translation>
27932793
</message>
27942794
<message>
2795-
<location filename="../controls/outputwidget.cpp" line="1149"/>
2795+
<location filename="../controls/outputwidget.cpp" line="1144"/>
27962796
<source>LightBlue</source>
27972797
<translation>淺藍色</translation>
27982798
</message>
27992799
<message>
2800-
<location filename="../controls/outputwidget.cpp" line="1150"/>
2800+
<location filename="../controls/outputwidget.cpp" line="1145"/>
28012801
<source>LightGray</source>
28022802
<translation>淺灰色</translation>
28032803
</message>
28042804
<message>
2805-
<location filename="../controls/outputwidget.cpp" line="1235"/>
2805+
<location filename="../controls/outputwidget.cpp" line="1230"/>
28062806
<source>NOT CONNECTED!</source>
28072807
<translation>未連線!</translation>
28082808
</message>
28092809
<message>
2810-
<location filename="../controls/outputwidget.cpp" line="1243"/>
2810+
<location filename="../controls/outputwidget.cpp" line="1238"/>
28112811
<source>Invalid Data Length Specified</source>
28122812
<translation>指定的資料長度無效</translation>
28132813
</message>
28142814
<message>
2815-
<location filename="../controls/outputwidget.cpp" line="1290"/>
2815+
<location filename="../controls/outputwidget.cpp" line="1285"/>
28162816
<source>Zoom: %1%</source>
28172817
<translation>飛漲: %1%</translation>
28182818
</message>

0 commit comments

Comments
 (0)