Skip to content

Commit 04b1f58

Browse files
committed
Plugin: fix filter header bug
1 parent 055e142 commit 04b1f58

4 files changed

Lines changed: 34 additions & 27 deletions

File tree

Src/FrmManagePlugins.cpp

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ CFrmManagePlugins::CFrmManagePlugins(QWidget *parent) : CParameterUI(parent)
1515
, m_pPara(nullptr)
1616
, ui(new Ui::CFrmManagePluginsUI)
1717
, m_pModelFilter(nullptr)
18-
, m_nColPath(4)
1918
{
2019
ui->setupUi(this);
2120
setWindowTitle(tr("Load Plugins"));
@@ -32,11 +31,7 @@ CFrmManagePlugins::CFrmManagePlugins(QWidget *parent) : CParameterUI(parent)
3231

3332
m_pModelFilter = new QStandardItemModel(ui->tvFilter);
3433
ui->tvFilter->setModel(m_pModelFilter);
35-
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Whitelist, new QStandardItem(tr("Whitelist")));
36-
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Blacklist, new QStandardItem(tr("Blacklist")));
37-
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Name, new QStandardItem(tr("Name")));
38-
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Type, new QStandardItem(tr("Type")));
39-
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Path, new QStandardItem(tr("Path")));
34+
SetFilterHeader();
4035

4136
//必须在 setModel 后,才能应用
4237
/*第二个参数可以为:
@@ -117,7 +112,7 @@ int CFrmManagePlugins::FindPlugins(QDir dir, QStringList filters, bool bAdd)
117112
RemoveItem(szPath);
118113
continue;
119114
}
120-
auto pFind = m_pModelFilter->findItems(szPath, Qt::MatchExactly, m_nColPath);
115+
auto pFind = m_pModelFilter->findItems(szPath, Qt::MatchExactly, ColumnNo::Path);
121116
if(!pFind.isEmpty()) continue;
122117

123118
QPluginLoader loader(szPath);
@@ -167,7 +162,7 @@ int CFrmManagePlugins::AddItem(CPlugin* plugin, const QString& szPath)
167162

168163
int CFrmManagePlugins::RemoveItem(const QString &szPath)
169164
{
170-
auto pFind = m_pModelFilter->findItems(szPath, Qt::MatchExactly, m_nColPath);
165+
auto pFind = m_pModelFilter->findItems(szPath, Qt::MatchExactly, ColumnNo::Path);
171166
if(pFind.isEmpty()) return 0;
172167
foreach(auto item, pFind) {
173168
m_pModelFilter->removeRow(item->index().row());
@@ -223,6 +218,7 @@ void CFrmManagePlugins::on_gbPluginsPath_clicked(bool checked)
223218
{
224219
m_pModelPluginPath->clear();
225220
m_pModelFilter->clear();
221+
SetFilterHeader();
226222

227223
QStringList lstPaths;
228224
if(checked)
@@ -233,3 +229,14 @@ void CFrmManagePlugins::on_gbPluginsPath_clicked(bool checked)
233229
AddPath(szPath);
234230
}
235231
}
232+
233+
int CFrmManagePlugins::SetFilterHeader()
234+
{
235+
if(!m_pModelFilter) return -1;
236+
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Whitelist, new QStandardItem(tr("Whitelist")));
237+
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Blacklist, new QStandardItem(tr("Blacklist")));
238+
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Name, new QStandardItem(tr("Name")));
239+
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Type, new QStandardItem(tr("Type")));
240+
m_pModelFilter->setHorizontalHeaderItem(ColumnNo::Path, new QStandardItem(tr("Path")));
241+
return 0;
242+
}

Src/FrmManagePlugins.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ private slots:
3030
void on_gbPluginsPath_clicked(bool checked);
3131

3232
private:
33+
int SetFilterHeader();
3334
int AddPath(const QString &szPath);
3435
int FindPlugins(QDir dir, QStringList filters, bool bAdd = true);
3536
int AddItem(CPlugin* plugin, const QString& szPath);
@@ -46,6 +47,5 @@ private slots:
4647
CParameterPlugin* m_pPara;
4748
QStandardItemModel* m_pModelPluginPath;
4849
QStandardItemModel* m_pModelFilter;
49-
int m_nColPath;
5050
};
5151

Src/Resource/Translations/Plugin_zh_CN.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -263,47 +263,47 @@
263263
<context>
264264
<name>CFrmManagePlugins</name>
265265
<message>
266-
<location filename="../../FrmManagePlugins.cpp" line="21"/>
266+
<location filename="../../FrmManagePlugins.cpp" line="20"/>
267267
<source>Load Plugins</source>
268268
<translation>加载插件</translation>
269269
</message>
270270
<message>
271-
<location filename="../../FrmManagePlugins.cpp" line="35"/>
271+
<location filename="../../FrmManagePlugins.cpp" line="236"/>
272272
<source>Whitelist</source>
273273
<translation>白名单</translation>
274274
</message>
275275
<message>
276-
<location filename="../../FrmManagePlugins.cpp" line="36"/>
276+
<location filename="../../FrmManagePlugins.cpp" line="237"/>
277277
<source>Blacklist</source>
278278
<translation>黑名单</translation>
279279
</message>
280280
<message>
281-
<location filename="../../FrmManagePlugins.cpp" line="37"/>
281+
<location filename="../../FrmManagePlugins.cpp" line="238"/>
282282
<source>Name</source>
283283
<translation>名称</translation>
284284
</message>
285285
<message>
286-
<location filename="../../FrmManagePlugins.cpp" line="38"/>
286+
<location filename="../../FrmManagePlugins.cpp" line="239"/>
287287
<source>Type</source>
288288
<translation>类型</translation>
289289
</message>
290290
<message>
291-
<location filename="../../FrmManagePlugins.cpp" line="39"/>
291+
<location filename="../../FrmManagePlugins.cpp" line="240"/>
292292
<source>Path</source>
293293
<translation>路径</translation>
294294
</message>
295295
<message>
296-
<location filename="../../FrmManagePlugins.cpp" line="181"/>
296+
<location filename="../../FrmManagePlugins.cpp" line="176"/>
297297
<source>Plugin path</source>
298298
<translation>插件路径</translation>
299299
</message>
300300
<message>
301-
<location filename="../../FrmManagePlugins.cpp" line="217"/>
301+
<location filename="../../FrmManagePlugins.cpp" line="212"/>
302302
<source>Add</source>
303303
<translation>增加</translation>
304304
</message>
305305
<message>
306-
<location filename="../../FrmManagePlugins.cpp" line="218"/>
306+
<location filename="../../FrmManagePlugins.cpp" line="213"/>
307307
<source>Remove</source>
308308
<translation>移除</translation>
309309
</message>

Src/Resource/Translations/Plugin_zh_TW.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -263,47 +263,47 @@
263263
<context>
264264
<name>CFrmManagePlugins</name>
265265
<message>
266-
<location filename="../../FrmManagePlugins.cpp" line="21"/>
266+
<location filename="../../FrmManagePlugins.cpp" line="20"/>
267267
<source>Load Plugins</source>
268268
<translation>加載插件</translation>
269269
</message>
270270
<message>
271-
<location filename="../../FrmManagePlugins.cpp" line="35"/>
271+
<location filename="../../FrmManagePlugins.cpp" line="236"/>
272272
<source>Whitelist</source>
273273
<translation>白名單</translation>
274274
</message>
275275
<message>
276-
<location filename="../../FrmManagePlugins.cpp" line="36"/>
276+
<location filename="../../FrmManagePlugins.cpp" line="237"/>
277277
<source>Blacklist</source>
278278
<translation>黑名單</translation>
279279
</message>
280280
<message>
281-
<location filename="../../FrmManagePlugins.cpp" line="37"/>
281+
<location filename="../../FrmManagePlugins.cpp" line="238"/>
282282
<source>Name</source>
283283
<translation>名稱</translation>
284284
</message>
285285
<message>
286-
<location filename="../../FrmManagePlugins.cpp" line="38"/>
286+
<location filename="../../FrmManagePlugins.cpp" line="239"/>
287287
<source>Type</source>
288288
<translation>類型</translation>
289289
</message>
290290
<message>
291-
<location filename="../../FrmManagePlugins.cpp" line="39"/>
291+
<location filename="../../FrmManagePlugins.cpp" line="240"/>
292292
<source>Path</source>
293293
<translation>路徑</translation>
294294
</message>
295295
<message>
296-
<location filename="../../FrmManagePlugins.cpp" line="181"/>
296+
<location filename="../../FrmManagePlugins.cpp" line="176"/>
297297
<source>Plugin path</source>
298298
<translation>插件路徑</translation>
299299
</message>
300300
<message>
301-
<location filename="../../FrmManagePlugins.cpp" line="217"/>
301+
<location filename="../../FrmManagePlugins.cpp" line="212"/>
302302
<source>Add</source>
303303
<translation>增加</translation>
304304
</message>
305305
<message>
306-
<location filename="../../FrmManagePlugins.cpp" line="218"/>
306+
<location filename="../../FrmManagePlugins.cpp" line="213"/>
307307
<source>Remove</source>
308308
<translation>移除</translation>
309309
</message>

0 commit comments

Comments
 (0)