From kde-commits Wed Sep 30 23:39:49 2009 From: =?utf-8?q?Friedrich=20W=2E=20H=2E=20Kossebau?= Date: Wed, 30 Sep 2009 23:39:49 +0000 To: kde-commits Subject: KDE/kdeutils/okteta/kasten/controllers Message-Id: <1254353989.918704.18661.nullmailer () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=125435399823587 SVN commit 1029876 by kossebau: changed: have checksum algorithms and their parameterset edit created in separate factories M +4 -2 CMakeLists.txt M +4 -37 view/checksum/checksumtool.cpp M +14 -14 view/checksum/checksumview.cpp M +1 -4 view/libbytearraychecksum/algorithm/modsumbytearraychecksumparameterset.cpp M +1 -1 view/libbytearraychecksum/algorithm/modsumbytearraychecksumparameterset.h M +3 -0 view/libbytearraychecksum/algorithm/modsumbytearraychecksumparametersetedit.cpp M +3 -0 view/libbytearraychecksum/algorithm/modsumbytearraychecksumparametersetedit.h M +1 -4 view/libbytearraychecksum/algorithm/nobytearraychecksumparameterset.cpp M +1 -1 view/libbytearraychecksum/algorithm/nobytearraychecksumparameterset.h M +3 -0 view/libbytearraychecksum/algorithm/nobytearraychecksumparametersetedit.cpp M +3 -0 view/libbytearraychecksum/algorithm/nobytearraychecksumparametersetedit.h A view/libbytearraychecksum/bytearraychecksumalgorithmfactory.cpp [License: LGPL] A view/libbytearraychecksum/bytearraychecksumalgorithmfactory.h [License: LGPL] A view/libbytearraychecksum/bytearraychecksumparameterseteditfactory.cpp [License: LGPL] A view/libbytearraychecksum/bytearraychecksumparameterseteditfactory.h [License: LGPL] --- trunk/KDE/kdeutils/okteta/kasten/controllers/CMakeLists.txt #1029875:1029876 @@ -71,14 +71,16 @@ view/libbytearraychecksum/abstractbytearraychecksumalgorithm.cpp view/libbytearraychecksum/abstractbytearraychecksumparameterset.cpp view/libbytearraychecksum/abstractbytearraychecksumparametersetedit.cpp - view/libbytearraychecksum/algorithm/nobytearraychecksumparameterset.cpp - view/libbytearraychecksum/algorithm/nobytearraychecksumparametersetedit.cpp + view/libbytearraychecksum/bytearraychecksumalgorithmfactory.cpp + view/libbytearraychecksum/bytearraychecksumparameterseteditfactory.cpp view/libbytearraychecksum/algorithm/crc32bytearraychecksumalgorithm.cpp view/libbytearraychecksum/algorithm/adler32bytearraychecksumalgorithm.cpp view/libbytearraychecksum/algorithm/modsum8bytearraychecksumalgorithm.cpp view/libbytearraychecksum/algorithm/modsum16bytearraychecksumalgorithm.cpp view/libbytearraychecksum/algorithm/modsum32bytearraychecksumalgorithm.cpp view/libbytearraychecksum/algorithm/modsum64bytearraychecksumalgorithm.cpp + view/libbytearraychecksum/algorithm/nobytearraychecksumparameterset.cpp + view/libbytearraychecksum/algorithm/nobytearraychecksumparametersetedit.cpp view/libbytearraychecksum/algorithm/modsumbytearraychecksumparameterset.cpp view/libbytearraychecksum/algorithm/modsumbytearraychecksumparametersetedit.cpp ${QCA2CHECKSUM_SRCS} --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/checksum/checksumtool.cpp #1029875:1029876 @@ -25,16 +25,8 @@ // lib #include "checksumcalculatejob.h" // +#include #include -#include -#include -#include -#include -#include -#include -#ifdef HAVE_QCA2 -#include -#endif // #include #include @@ -55,14 +47,6 @@ namespace Kasten { -#ifdef HAVE_QCA2 -static inline void addQca2Algorithm( QList& algorithmList, const QString& name, const char* type ) -{ - if( QCA::isSupported(type) ) - algorithmList << new Qca2ByteArrayChecksumAlgorithm( name, QString::fromLatin1(type) ); -} -#endif - ChecksumTool::ChecksumTool() : AbstractTool(), mChecksumUptodate( false ), @@ -74,30 +58,13 @@ { setObjectName( "Checksum" ); - mAlgorithmList - << new ModSum8ByteArrayChecksumAlgorithm() - << new ModSum16ByteArrayChecksumAlgorithm() - << new ModSum32ByteArrayChecksumAlgorithm() - << new ModSum64ByteArrayChecksumAlgorithm() - << new Adler32ByteArrayChecksumAlgorithm() - << new Crc32ByteArrayChecksumAlgorithm(); - +// TODO: find a better place to do and store the initialization #ifdef HAVE_QCA2 mQcaInitializer = new QCA::Initializer( QCA::Practical, 64 ); kDebug()<< QCA::supportedFeatures();//Hash::supportedTypes(); - - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "SHA-0"), "sha0" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "SHA-1"), "sha1" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "MD2"), "md2" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "MD4"), "md4" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "MD5"), "md5" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "RIPEMD160"), "ripemd160" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "SHA-224"), "sha224" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "SHA-256"), "sha256" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "SHA-384"), "sha384" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "SHA-512"), "sha512" ); - addQca2Algorithm( mAlgorithmList, i18nc( "name of the hash algorithm", "Whirlpool"), "whirlpool" ); #endif + + mAlgorithmList = ByteArrayChecksumAlgorithmFactory::createAlgorithms(); } QList ChecksumTool::algorithmList() const { return mAlgorithmList; } --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/checksum/checksumview.cpp #1029875:1029876 @@ -25,8 +25,7 @@ // tool #include "checksumtool.h" // lib -#include -#include +#include #include #include #include @@ -44,6 +43,7 @@ #include #include #include +#include namespace Kasten @@ -109,6 +109,15 @@ connect( mTool, SIGNAL(uptodateChanged( bool )), SLOT(onChecksumUptodateChanged( bool )) ); connect( mTool, SIGNAL(isApplyableChanged( bool )), SLOT(onApplyableChanged( bool )) ); + // automatically set focus to the parameters if a operation has been selected + QAbstractItemView* algorithmComboBoxListView = mAlgorithmComboBox->view(); + QObject::connect( algorithmComboBoxListView, SIGNAL(activated( const QModelIndex& )), + mParameterSetEditStack, SLOT(setFocus()) ); + // TODO: is a workaround for Qt 4.5.1 which doesn't emit activated() for mouse clicks + QObject::connect( algorithmComboBoxListView, SIGNAL(pressed( const QModelIndex& )), + mParameterSetEditStack, SLOT(setFocus()) ); + // TODO: goto filter button if there are no parameters + addAlgorithms(); } @@ -120,19 +129,10 @@ { mAlgorithmComboBox->addItem( algorithm->name() ); - AbstractByteArrayChecksumParameterSetEdit* parameterEdit; - const QString parameterSetId = algorithm->parameterSet()->id(); + const char* const parameterSetId = algorithm->parameterSet()->id(); + AbstractByteArrayChecksumParameterSetEdit* parameterEdit = + ByteArrayChecksumParameterSetEditFactory::createEdit( parameterSetId ); - if( parameterSetId == "ModSum" ) - parameterEdit = new ModSumByteArrayChecksumParameterSetEdit(); -#if 0 - else if( parameterSetId == "Reverse" ) - parameterEdit = new ReverseByteArrayFilterParameterSetEdit(); - else if( parameterSetId == "Rotate" ) - parameterEdit = new RotateByteArrayFilterParameterSetEdit(); -#endif - else //if( parameterSetId == "None" ) TODO: default should be a message "Not found" - parameterEdit = new NoByteArrayChecksumParameterSetEdit(); mParameterSetEditStack->addWidget( parameterEdit ); } --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/modsumbytearraychecksumparameterset.cpp #1029875:1029876 @@ -22,15 +22,12 @@ #include "modsumbytearraychecksumparameterset.h" -// Qt -#include - ModSumByteArrayChecksumParameterSet::ModSumByteArrayChecksumParameterSet() : mEndianness( ThisMachineEndianness ) {} -QString ModSumByteArrayChecksumParameterSet::id() const { return QString::fromLatin1("ModSum"); } +const char* ModSumByteArrayChecksumParameterSet::id() const { return "ModSum"; } Endianness ModSumByteArrayChecksumParameterSet::endianness() const { return mEndianness; } --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/modsumbytearraychecksumparameterset.h #1029875:1029876 @@ -35,7 +35,7 @@ virtual ~ModSumByteArrayChecksumParameterSet(); public: // AbstractByteArrayChecksumParameterSet API - virtual QString id() const; + virtual const char* id() const; public: void setEndianness( Endianness endianness ); --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/modsumbytearraychecksumparametersetedit.cpp #1029875:1029876 @@ -31,6 +31,9 @@ #include +const char* const ModSumByteArrayChecksumParameterSetEdit::Id = "ModSum"; + + ModSumByteArrayChecksumParameterSetEdit::ModSumByteArrayChecksumParameterSetEdit( QWidget* parent ) : AbstractByteArrayChecksumParameterSetEdit( parent ) { --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/modsumbytearraychecksumparametersetedit.h #1029875:1029876 @@ -34,6 +34,9 @@ Q_OBJECT public: + static const char* const Id; + + public: ModSumByteArrayChecksumParameterSetEdit( QWidget* parent = 0 ); virtual ~ModSumByteArrayChecksumParameterSetEdit(); --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/nobytearraychecksumparameterset.cpp #1029875:1029876 @@ -22,14 +22,11 @@ #include "nobytearraychecksumparameterset.h" -// Qt -#include - NoByteArrayChecksumParameterSet::NoByteArrayChecksumParameterSet() {} -QString NoByteArrayChecksumParameterSet::id() const { return QString::fromLatin1("None"); } +const char* NoByteArrayChecksumParameterSet::id() const { return "None"; } NoByteArrayChecksumParameterSet::~NoByteArrayChecksumParameterSet() { --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/nobytearraychecksumparameterset.h #1029875:1029876 @@ -34,7 +34,7 @@ virtual ~NoByteArrayChecksumParameterSet(); public: // AbstractByteArrayChecksumParameterSet API - virtual QString id() const; + virtual const char* id() const; }; #endif --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/nobytearraychecksumparametersetedit.cpp #1029875:1029876 @@ -23,6 +23,9 @@ #include "nobytearraychecksumparametersetedit.h" +const char* const NoByteArrayChecksumParameterSetEdit::Id = "None"; + + NoByteArrayChecksumParameterSetEdit::NoByteArrayChecksumParameterSetEdit( QWidget* parent ) : AbstractByteArrayChecksumParameterSetEdit( parent ) {} --- trunk/KDE/kdeutils/okteta/kasten/controllers/view/libbytearraychecksum/algorithm/nobytearraychecksumparametersetedit.h #1029875:1029876 @@ -30,6 +30,9 @@ class NoByteArrayChecksumParameterSetEdit : public AbstractByteArrayChecksumParameterSetEdit { public: + static const char* const Id; + + public: explicit NoByteArrayChecksumParameterSetEdit( QWidget* parent = 0 ); virtual ~NoByteArrayChecksumParameterSetEdit();