Removed 'Encryption' column

This commit is contained in:
Pengfei
2021-08-09 10:53:37 +08:00
parent 09f3f46515
commit 6013879213
4 changed files with 124 additions and 153 deletions
+7 -14
View File
@@ -535,8 +535,8 @@ bool SDMCImporter::LoadTMD(const ContentSpecifier& specifier, TitleMetadata& out
return LoadTMD(specifier.type, specifier.id, out);
}
// English short title name, extdata id, encryption, seed, icon
using TitleData = std::tuple<std::string, u64, EncryptionType, bool, std::vector<u16>>;
// English short title name, extdata id, icon
using TitleData = std::tuple<std::string, u64, std::vector<u16>>;
TitleData LoadTitleData(NCCHContainer& ncch) {
std::string codeset_name;
@@ -572,13 +572,8 @@ TitleData LoadTitleData(NCCHContainer& ncch) {
u64 extdata_id{};
ncch.ReadExtdataId(extdata_id);
EncryptionType encryption = EncryptionType::None;
ncch.ReadEncryptionType(encryption);
bool seed_crypto{};
ncch.ReadSeedCrypto(seed_crypto);
return {Common::UTF16BufferToUTF8(smdh.GetShortTitle(SMDH::TitleLanguage::English)), extdata_id,
encryption, seed_crypto, smdh.GetIcon(false)};
smdh.GetIcon(false)};
}
static std::string NormalizeFilename(std::string filename) {
@@ -917,13 +912,12 @@ void SDMCImporter::ListTitle(std::vector<ContentSpecifier>& out) const {
break;
}
const auto& [name, extdata_id, encryption, seed_crypto, icon] =
LoadTitleData(ncch);
const auto& [name, extdata_id, icon] = LoadTitleData(ncch);
const auto size =
FileUtil::GetDirectoryTreeSize(directory + virtual_name + "/content/") +
TitleSizeAllowance;
out.push_back({type, id, FileUtil::Exists(citra_path + "content/"), size,
name, extdata_id, encryption, seed_crypto, icon});
name, extdata_id, icon});
} while (false);
}
@@ -994,15 +988,14 @@ void SDMCImporter::ListNandTitle(std::vector<ContentSpecifier>& out) const {
break;
}
const auto& [name, extdata_id, encryption, seed_crypto, icon] =
LoadTitleData(ncch);
const auto& [name, extdata_id, icon] = LoadTitleData(ncch);
const auto type = (id >> 32) == 0x00040030 ? ContentType::SystemApplet
: ContentType::SystemTitle;
const auto size =
FileUtil::GetDirectoryTreeSize(directory + virtual_name + "/content/") +
TitleSizeAllowance;
out.push_back({type, id, FileUtil::Exists(citra_path + "content/"), size,
name, extdata_id, encryption, seed_crypto, icon});
name, extdata_id, icon});
} while (false);
}
return true;
+1 -3
View File
@@ -68,9 +68,7 @@ struct ContentSpecifier {
u64 maximum_size; ///< The maximum size of the content. May be slightly bigger than real size.
std::string name; ///< Optional. The content's preferred display name.
u64 extdata_id; ///< Extdata ID for Applications.
EncryptionType encryption = EncryptionType::None; ///< Only for NCCHs. Encryption scheme.
bool seed_crypto = false; ///< Only for NCCHs. Whether seed crypto is used.
std::vector<u16> icon; ///< Optional. The content's icon.
std::vector<u16> icon; ///< Optional. The content's icon.
};
/**
+4 -19
View File
@@ -124,10 +124,9 @@ ImportDialog::ImportDialog(QWidget* parent, const Core::Config& config_)
// Set up column widths.
// These values are tweaked with regard to the default dialog size.
ui->main->setColumnWidth(0, width() * 0.11);
ui->main->setColumnWidth(1, width() * 0.415);
ui->main->setColumnWidth(2, width() * 0.14);
ui->main->setColumnWidth(3, width() * 0.17);
ui->main->setColumnWidth(4, width() * 0.08);
ui->main->setColumnWidth(1, width() * 0.525);
ui->main->setColumnWidth(2, width() * 0.18);
ui->main->setColumnWidth(3, width() * 0.10);
connect(ui->main, &QTreeWidget::customContextMenuRequested, this, &ImportDialog::OnContextMenu);
}
@@ -246,22 +245,8 @@ void ImportDialog::InsertSecondLevelItem(std::size_t row, const Core::ContentSpe
name = replace_name;
}
QString encryption = tr(EncryptionTypeMap.at(content.encryption));
if (content.seed_crypto) {
encryption.append(tr(" (Seed)"));
}
if (content.type != Core::ContentType::Application &&
content.type != Core::ContentType::Update && content.type != Core::ContentType::DLC &&
content.type != Core::ContentType::SystemTitle &&
content.type != Core::ContentType::SystemApplet) {
// Do not display encryption in this case
encryption.clear();
}
auto* item = new QTreeWidgetItem{{QString{}, name, ReadableByteSize(content.maximum_size),
encryption, content.already_exists ? tr("Yes") : tr("No")}};
content.already_exists ? tr("Yes") : tr("No")}};
QPixmap icon;
if (replace_icon.isNull()) {
+112 -117
View File
@@ -1,117 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>ImportDialog</class>
<widget class="QDialog" name="ImportDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>560</width>
<height>320</height>
</rect>
</property>
<property name="windowTitle">
<string>Select Contents</string>
</property>
<layout class="QVBoxLayout">
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QPushButton" name="advanced_button">
<property name="text">
<string>Advanced...</string>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</spacer>
</item>
<item>
<widget class="QRadioButton" name="title_view_button">
<property name="text">
<string>Title View</string>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="group_view_button">
<property name="text">
<string>Group View</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QTreeWidget" name="main">
<property name="contextMenuPolicy">
<enum>Qt::CustomContextMenu</enum>
</property>
<column>
<property name="text">
<string/>
</property>
</column>
<column>
<property name="text">
<string>Name</string>
</property>
</column>
<column>
<property name="text">
<string>Size</string>
</property>
</column>
<column>
<property name="text">
<string>Encryption</string>
</property>
</column>
<column>
<property name="text">
<string>Exists</string>
</property>
</column>
</widget>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="availableSpace">
<property name="text">
<string>Available Space:</string>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="totalSize">
<property name="text">
<string>Total Size:</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="standardButtons">
<set>QDialogButtonBox::Ok|QDialogButtonBox::Cancel|QDialogButtonBox::Reset</set>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>ImportDialog</class>
<widget class="QDialog" name="ImportDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>560</width>
<height>320</height>
</rect>
</property>
<property name="windowTitle">
<string>Select Contents</string>
</property>
<layout class="QVBoxLayout">
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QPushButton" name="advanced_button">
<property name="text">
<string>Advanced...</string>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</spacer>
</item>
<item>
<widget class="QRadioButton" name="title_view_button">
<property name="text">
<string>Title View</string>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="group_view_button">
<property name="text">
<string>Group View</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QTreeWidget" name="main">
<property name="contextMenuPolicy">
<enum>Qt::CustomContextMenu</enum>
</property>
<column>
<property name="text">
<string/>
</property>
</column>
<column>
<property name="text">
<string>Name</string>
</property>
</column>
<column>
<property name="text">
<string>Size</string>
</property>
</column>
<column>
<property name="text">
<string>Exists</string>
</property>
</column>
</widget>
</item>
<item>
<layout class="QHBoxLayout">
<item>
<widget class="QLabel" name="availableSpace">
<property name="text">
<string>Available Space:</string>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="totalSize">
<property name="text">
<string>Total Size:</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="standardButtons">
<set>QDialogButtonBox::Ok|QDialogButtonBox::Cancel|QDialogButtonBox::Reset</set>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>