key.cpp
/*
This file is part of libkabc.
Copyright (c) 2002 Tobias Koenig <tokoe@kde.org>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#include <kapplication.h>
#include <klocale.h>
#include "key.h"
using namespace KABC;
Key::Key( const QString &text, int type )
: mTextData( text ), mIsBinary( false ), mType( type )
{
mId = KApplication::randomString(8);
}
Key::~Key()
{
}
bool Key::operator==( const Key &k ) const
{
if ( mIsBinary != k.mIsBinary ) return false;
if ( mIsBinary )
if ( mBinaryData != k.mBinaryData ) return false;
else
if ( mTextData != k.mTextData ) return false;
if ( mType != k.mType ) return false;
if ( mCustomTypeString != k.mCustomTypeString ) return false;
return true;
}
bool Key::operator!=( const Key &k ) const
{
return !( k == *this );
}
void Key::setId( const QString &id )
{
mId = id;
}
QString Key::id() const
{
return mId;
}
void Key::setBinaryData( const QByteArray &binary )
{
mBinaryData = binary;
mIsBinary = true;
}
QByteArray Key::binaryData() const
{
return mBinaryData;
}
void Key::setTextData( const QString &text )
{
mTextData = text;
mIsBinary = false;
}
QString Key::textData() const
{
return mTextData;
}
bool Key::isBinary() const
{
return mIsBinary;
}
void Key::setType( int type )
{
mType = type;
}
void Key::setCustomTypeString( const QString &custom )
{
mCustomTypeString = custom;
}
int Key::type() const
{
return mType;
}
QString Key::customTypeString() const
{
return mCustomTypeString;
}
Key::TypeList Key::typeList()
{
TypeList list;
list << X509;
list << PGP;
list << Custom;
return list;
}
QString Key::typeLabel( int type )
{
switch ( type ) {
case X509:
return i18n( "X509" );
break;
case PGP:
return i18n( "PGP" );
break;
case Custom:
return i18n( "Custom" );
break;
default:
return i18n( "Unknown type" );
break;
}
}
QDataStream &KABC::operator<<( QDataStream &s, const Key &key )
{
return s << key.mId << key.mIsBinary << key.mTextData << key.mBinaryData <<
key.mCustomTypeString << key.mType;
}
QDataStream &KABC::operator>>( QDataStream &s, Key &key )
{
s >> key.mId >> key.mIsBinary >> key.mTextData >> key.mBinaryData >>
key.mCustomTypeString >> key.mType;
return s;
}
KABC::Key::textData
QString textData() const
Returns the text data.
Definition: key.cpp:83
KABC::Key::typeList
static TypeList typeList()
Returns a list of all available key types.
Definition: key.cpp:113
KABC::Key::binaryData
QByteArray binaryData() const
Returns the binary data.
Definition: key.cpp:72
KABC::Key
A class to store an encryption key.
Definition: key.h:33
KABC::Key::setTextData
void setTextData(const QString &text)
Sets text data.
Definition: key.cpp:77
KABC::Key::isBinary
bool isBinary() const
Returns whether the key contains binary or text data.
Definition: key.cpp:88
klocale.h
KABC::Key::setBinaryData
void setBinaryData(const QByteArray &binary)
Sets binary data.
Definition: key.cpp:66
KABC::Key::setId
void setId(const QString &id)
Sets the unique identifier.
Definition: key.cpp:56
KApplication::randomString
static QString randomString(int length)
KABC::Key::Key
Key(const QString &text=QString::null, int type=PGP)
Constructor.
Definition: key.cpp:28
KABC::Key::id
QString id() const
Returns the unique identifier.
Definition: key.cpp:61
KABC::Key::customTypeString
QString customTypeString() const
Returns the custom type string.
Definition: key.cpp:108
KABC::Key::typeLabel
static QString typeLabel(int type)
Returns a translated label for a given key type.
Definition: key.cpp:123
KABC::Key::setCustomTypeString
void setCustomTypeString(const QString &custom)
Sets custom type string.
Definition: key.cpp:98
KABC::Key::type
int type() const
Returns the type, see Type.
Definition: key.cpp:103
KABC::Key::~Key
~Key()
Destructor.
Definition: key.cpp:34
KABC::Key::setType
void setType(int type)
Sets the type, see Type.
Definition: key.cpp:93

KDE Home | KDE Accessibility Home | Description of Access Keys