File indexing completed on 2024-06-23 05:48:48
0001 /* 0002 This file is part of the Okteta Kasten module, made within the KDE community. 0003 0004 SPDX-FileCopyrightText: 2009 Friedrich W. H. Kossebau <kossebau@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0007 */ 0008 0009 #include "modsumbytearraychecksumparametersetedit.hpp" 0010 0011 // parameterset 0012 #include "modsumbytearraychecksumparameterset.hpp" 0013 // KF 0014 #include <KLocalizedString> 0015 #include <KComboBox> 0016 // Qt 0017 #include <QFormLayout> 0018 0019 const char ModSumByteArrayChecksumParameterSetEdit::Id[] = "ModSum"; 0020 0021 ModSumByteArrayChecksumParameterSetEdit::ModSumByteArrayChecksumParameterSetEdit(QWidget* parent) 0022 : AbstractByteArrayChecksumParameterSetEdit(parent) 0023 { 0024 auto* baseLayout = new QFormLayout(this); 0025 baseLayout->setContentsMargins(0, 0, 0, 0); 0026 0027 mByteOrderComboBox = new KComboBox(this); 0028 mByteOrderComboBox->addItem(i18nc("@item:inlistbox", "Big-endian")); // add first for index 0029 mByteOrderComboBox->addItem(i18nc("@item:inlistbox", "Little-endian")); // add second for index 0030 connect(mByteOrderComboBox, qOverload<int>(&KComboBox::activated), 0031 this, &ModSumByteArrayChecksumParameterSetEdit::valuesChanged); 0032 0033 const QString byteOrderLabelText = 0034 i18nc("@label:listbox byte order to use for decoding the bytes into integer values", 0035 "Byte Order:"); 0036 const QString groupSizeToolTip = 0037 i18nc("@info:tooltip", 0038 "The byte order to use for decoding the bytes into integer values."); 0039 mByteOrderComboBox->setToolTip(groupSizeToolTip); 0040 0041 baseLayout->addRow(byteOrderLabelText, mByteOrderComboBox); 0042 } 0043 0044 ModSumByteArrayChecksumParameterSetEdit::~ModSumByteArrayChecksumParameterSetEdit() = default; 0045 0046 bool ModSumByteArrayChecksumParameterSetEdit::isValid() const { return true; } 0047 0048 void ModSumByteArrayChecksumParameterSetEdit::setParameterSet(const AbstractByteArrayChecksumParameterSet* parameterSet) 0049 { 0050 const auto* modSumParameterSet = 0051 static_cast<const ModSumByteArrayChecksumParameterSet*>(parameterSet); 0052 0053 mByteOrderComboBox->setCurrentIndex(modSumParameterSet->endianness()); 0054 } 0055 0056 void ModSumByteArrayChecksumParameterSetEdit::getParameterSet(AbstractByteArrayChecksumParameterSet* parameterSet) const 0057 { 0058 auto* modSumParameterSet = 0059 static_cast<ModSumByteArrayChecksumParameterSet*>(parameterSet); 0060 0061 modSumParameterSet->setEndianness(static_cast<QSysInfo::Endian>(mByteOrderComboBox->currentIndex())); 0062 } 0063 0064 #include "moc_modsumbytearraychecksumparametersetedit.cpp"