Refactor and Add _readsec()

This commit is contained in:
wh201906
2020-08-04 13:44:20 +08:00
parent a60b28ee66
commit 946d0acb01
5 changed files with 179 additions and 118 deletions
+34 -19
View File
@@ -202,25 +202,25 @@ void MainWindow::MF_onTypeChanged(int id, bool st)
typeBtnGroup->blockSignals(false);
}
void MainWindow::on_MF_checkAllBox_stateChanged(int arg1)
void MainWindow::on_MF_selectAllBox_stateChanged(int arg1)
{
ui->MF_dataWidget->blockSignals(true);
ui->MF_checkAllBox->blockSignals(true);
ui->MF_selectAllBox->blockSignals(true);
if(arg1 == Qt::PartiallyChecked)
{
ui->MF_checkAllBox->setTristate(false);
ui->MF_checkAllBox->setCheckState(Qt::Checked);
ui->MF_selectAllBox->setTristate(false);
ui->MF_selectAllBox->setCheckState(Qt::Checked);
}
for(int i = 0; i < mifare->cardType.blocks; i++)
{
ui->MF_dataWidget->item(i, 1)->setCheckState(ui->MF_checkAllBox->checkState());
ui->MF_dataWidget->item(i, 1)->setCheckState(ui->MF_selectAllBox->checkState());
}
for(int i = 0; i < mifare->cardType.sectors; i++)
{
ui->MF_dataWidget->item(mifare->cardType.blks[i], 0)->setCheckState(ui->MF_checkAllBox->checkState());
ui->MF_dataWidget->item(mifare->cardType.blks[i], 0)->setCheckState(ui->MF_selectAllBox->checkState());
}
ui->MF_dataWidget->blockSignals(false);
ui->MF_checkAllBox->blockSignals(false);
ui->MF_selectAllBox->blockSignals(false);
}
void MainWindow::on_MF_data2KeyButton_clicked()
@@ -253,7 +253,7 @@ void MainWindow::on_MF_fontButton_clicked()
void MainWindow::on_MF_dataWidget_itemChanged(QTableWidgetItem *item)
{
ui->MF_dataWidget->blockSignals(true);
ui->MF_checkAllBox->blockSignals(true);
ui->MF_selectAllBox->blockSignals(true);
if(item->column() == 0)
{
int selectedSectors = 0;
@@ -271,15 +271,15 @@ void MainWindow::on_MF_dataWidget_itemChanged(QTableWidgetItem *item)
}
if(selectedSectors == 0)
{
ui->MF_checkAllBox->setCheckState(Qt::Unchecked);
ui->MF_selectAllBox->setCheckState(Qt::Unchecked);
}
else if(selectedSectors == mifare->cardType.sectors)
{
ui->MF_checkAllBox->setCheckState(Qt::Checked);
ui->MF_selectAllBox->setCheckState(Qt::Checked);
}
else
{
ui->MF_checkAllBox->setCheckState(Qt::PartiallyChecked);
ui->MF_selectAllBox->setCheckState(Qt::PartiallyChecked);
}
}
else if(item->column() == 1)
@@ -303,15 +303,15 @@ void MainWindow::on_MF_dataWidget_itemChanged(QTableWidgetItem *item)
}
if(selectedBlocks == 0)
{
ui->MF_checkAllBox->setCheckState(Qt::Unchecked);
ui->MF_selectAllBox->setCheckState(Qt::Unchecked);
}
else if(selectedBlocks == mifare->cardType.blocks)
{
ui->MF_checkAllBox->setCheckState(Qt::Checked);
ui->MF_selectAllBox->setCheckState(Qt::Checked);
}
else
{
ui->MF_checkAllBox->setCheckState(Qt::PartiallyChecked);
ui->MF_selectAllBox->setCheckState(Qt::PartiallyChecked);
}
if(selectedSubBlocks == 0)
{
@@ -340,7 +340,7 @@ void MainWindow::on_MF_dataWidget_itemChanged(QTableWidgetItem *item)
mifare->data_syncWithDataWidget(false, item->row());
}
ui->MF_dataWidget->blockSignals(false);
ui->MF_checkAllBox->blockSignals(false);
ui->MF_selectAllBox->blockSignals(false);
}
void MainWindow::on_MF_keyWidget_itemChanged(QTableWidgetItem *item)
@@ -659,6 +659,13 @@ void MainWindow::on_MF_Sniff_sniffButton_clicked()
setState(true);
}
void MainWindow::on_MF_Sniff_snoopButton_clicked()
{
setState(false);
mifare->snoop();
setState(true);
}
void MainWindow::on_MF_Sniff_listButton_clicked()
{
mifare->list();
@@ -673,7 +680,7 @@ void MainWindow::MF_widgetReset()
ui->MF_dataWidget->setRowCount(blks);
ui->MF_dataWidget->blockSignals(true);
ui->MF_checkAllBox->blockSignals(true);
ui->MF_selectAllBox->blockSignals(true);
for(int i = 0; i < blks; i++)
{
@@ -692,10 +699,10 @@ void MainWindow::MF_widgetReset()
setTableItem(ui->MF_dataWidget, mifare->cardType.blks[i], 0, QString::number(i));
ui->MF_dataWidget->item(mifare->cardType.blks[i], 0)->setCheckState(Qt::Checked);
}
ui->MF_checkAllBox->setCheckState(Qt::Checked);
ui->MF_selectAllBox->setCheckState(Qt::Checked);
ui->MF_dataWidget->blockSignals(false);
ui->MF_checkAllBox->blockSignals(false);
ui->MF_selectAllBox->blockSignals(false);
}
// ************************************************
@@ -767,7 +774,8 @@ void MainWindow::uiInit()
}
settings->endGroup();
ui->MF_RW_keyTypeBox->addItem("A", Mifare::KEY_A);
ui->MF_RW_keyTypeBox->addItem("B", Mifare::KEY_B);
on_Raw_CMDHistoryBox_stateChanged(Qt::Unchecked);
on_PM3_refreshPortButton_clicked();
@@ -889,3 +897,10 @@ void MainWindow::on_GroupBox_clicked(bool checked)
}
// ***********************************************
void MainWindow::on_testButton_clicked()
{
mifare->_readsec(0, Mifare::KEY_A, "FFFFFFFFFFFF");
}
+5 -1
View File
@@ -137,10 +137,14 @@ private slots:
void on_GroupBox_clicked(bool checked);
void on_MF_checkAllBox_stateChanged(int arg1);
void on_MF_selectAllBox_stateChanged(int arg1);
void on_MF_fillKeysButton_clicked();
void on_MF_Sniff_snoopButton_clicked();
void on_testButton_clicked();
private:
Ui::MainWindow* ui;
QButtonGroup* typeBtnGroup;
+42 -14
View File
@@ -183,9 +183,9 @@
</spacer>
</item>
<item>
<widget class="QCheckBox" name="MF_checkAllBox">
<widget class="QCheckBox" name="MF_selectAllBox">
<property name="text">
<string>Check All</string>
<string>Select All</string>
</property>
<property name="tristate">
<bool>false</bool>
@@ -564,16 +564,6 @@
<height>16777215</height>
</size>
</property>
<item>
<property name="text">
<string>A</string>
</property>
</item>
<item>
<property name="text">
<string>B</string>
</property>
</item>
</widget>
</item>
<item>
@@ -585,6 +575,13 @@
</item>
</layout>
</item>
<item>
<widget class="QPushButton" name="testButton">
<property name="text">
<string>test</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_3">
<property name="orientation">
@@ -827,6 +824,12 @@
</item>
<item>
<widget class="QPushButton" name="MF_Sim_writeAllButton">
<property name="minimumSize">
<size>
<width>40</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Read All</string>
</property>
@@ -847,6 +850,12 @@
</item>
<item>
<widget class="QPushButton" name="MF_Sim_simButton">
<property name="minimumSize">
<size>
<width>40</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Simulate</string>
</property>
@@ -910,9 +919,28 @@
</widget>
</item>
<item>
<widget class="QPushButton" name="MF_Sniff_listButton">
<widget class="QPushButton" name="MF_Sniff_snoopButton">
<property name="minimumSize">
<size>
<width>40</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>List Sniff Data</string>
<string>Snoop</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="MF_Sniff_listButton">
<property name="minimumSize">
<size>
<width>40</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>List Data</string>
</property>
</widget>
</item>