#include "cipherssingleton.h" //Create Singleton-instance CiphersSingleton CiphersSingleton::instance; CiphersSingleton::CiphersSingleton() { //Enter QStrings as Descriptions for symmetric Ciphers m_symmetricCipherDescriptions.append( QString("NullCipher") ); m_symmetricCipherDescriptions.append( QString("Caesar") ); m_symmetricCipherDescriptions.append( QString("Cube") ); m_symmetricCipherDescriptions.append( QString("AES") ); //Enter QStrings as Descriptions for asymmetric Ciphers m_asymmetricCipherDescriptions.append( QString("RSA") ); m_asymmetricCipherDescriptions.append( QString("ECC") ); } QString CiphersSingleton::textFromValue(int value) { if( value > m_symmetricCipherDescriptions.size()-1 ) { if( (value - m_symmetricCipherDescriptions.size()) > m_asymmetricCipherDescriptions.size()-1 ) return QString("ERROR"); else return m_asymmetricCipherDescriptions[(value - m_symmetricCipherDescriptions.size())]; } return m_symmetricCipherDescriptions[value]; } int CiphersSingleton::valueFromText(const QString& text) { //Search Symmetric Ciphers for (int var = 0; var < m_symmetricCipherDescriptions.size(); var++) { if( m_symmetricCipherDescriptions[var] == text ) return var; } //Search Asymmetric Ciphers for (int var = 0; var < m_asymmetricCipherDescriptions.size(); var++) { if( m_asymmetricCipherDescriptions[var] == text ) return (var + m_symmetricCipherDescriptions.size()); } //Nothing found return -1; }