File indexing completed on 2024-05-12 04:39:43
0001 /* 0002 SPDX-FileCopyrightText: 2013 Vlas Puhov <vlas.puhov@mail.ru> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "converters.h" 0008 0009 #include <KLocalizedString> 0010 0011 using namespace KDevMI; 0012 0013 QString Converters::formatToString(Format format) 0014 { 0015 Q_ASSERT(format >= 0 && format < LAST_FORMAT); 0016 0017 static const QString formats[LAST_FORMAT] = {i18n("Binary"), i18n("Octal"), i18n("Decimal"), i18n("Hexadecimal"), i18n("Raw"), i18n("Unsigned")}; 0018 return formats[format]; 0019 } 0020 0021 Format Converters::stringToFormat(const QString& format) 0022 { 0023 for (int i = 0; i < LAST_FORMAT; i++) { 0024 if (formatToString(static_cast<Format>(i)) == format) { 0025 return static_cast<Format>(i); 0026 } 0027 } 0028 0029 return LAST_FORMAT; 0030 } 0031 0032 Mode Converters::stringToMode(const QString& mode) 0033 { 0034 for (int i = 0; i < LAST_MODE; i++) { 0035 if (modeToString(static_cast<Mode>(i)) == mode) { 0036 return static_cast<Mode>(i); 0037 } 0038 } 0039 0040 return LAST_MODE; 0041 } 0042 0043 QString Converters::modeToString(Mode mode) 0044 { 0045 Q_ASSERT(mode >= 0 && mode < LAST_MODE); 0046 0047 static const QString modes[LAST_MODE] = { 0048 QStringLiteral("natural"), 0049 QStringLiteral("v4_float"), 0050 QStringLiteral("v2_double"), 0051 QStringLiteral("v4_int32"), 0052 QStringLiteral("v2_int64"), 0053 QStringLiteral("u32"), 0054 QStringLiteral("u64"), 0055 QStringLiteral("f32"), 0056 QStringLiteral("f64") 0057 }; 0058 return modes[mode]; 0059 }