00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
#include "sound.h"
00022
00023
#include <qdatastream.h>
00024
00025
using namespace KABC;
00026
00027 Sound::Sound()
00028 : mIntern( false )
00029 {
00030 }
00031
00032 Sound::Sound(
const QString &url )
00033 : mUrl( url ), mIntern( false )
00034 {
00035 }
00036
00037 Sound::Sound(
const QByteArray &data )
00038 : mData( data ), mIntern( true )
00039 {
00040 }
00041
00042 Sound::~Sound()
00043 {
00044 }
00045
00046
bool Sound::operator==(
const Sound &s )
const
00047
{
00048
if ( mIntern != s.mIntern )
return false;
00049
00050
if ( mIntern ) {
00051
if ( mData != s.mData )
00052
return false;
00053 }
else {
00054
if ( mUrl != s.mUrl )
00055
return false;
00056 }
00057
00058
return true;
00059 }
00060
00061
bool Sound::operator!=(
const Sound &s )
const
00062
{
00063
return !( s == *
this );
00064 }
00065
00066
void Sound::setUrl(
const QString &url )
00067 {
00068 mUrl = url;
00069 mIntern =
false;
00070 }
00071
00072
void Sound::setData(
const QByteArray &data )
00073 {
00074 mData = data;
00075 mIntern =
true;
00076 }
00077
00078
bool Sound::isIntern()
const
00079
{
00080
return mIntern;
00081 }
00082
00083
QString Sound::url()
const
00084
{
00085
return mUrl;
00086 }
00087
00088
QByteArray Sound::data()
const
00089
{
00090
return mData;
00091 }
00092
00093
QString Sound::asString()
const
00094
{
00095
if ( mIntern )
00096
return "intern sound";
00097
else
00098
return mUrl;
00099 }
00100
00101
QDataStream &KABC::operator<<(
QDataStream &s,
const Sound &sound )
00102 {
00103
return s << sound.mIntern << sound.mUrl;
00104
00105 }
00106
00107
QDataStream &KABC::operator>>(
QDataStream &s, Sound &sound )
00108 {
00109 s >> sound.mIntern >> sound.mUrl;
00110
00111
return s;
00112 }