[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [Aki] d156f4e: Moved NickInfo to QSharedData
From: Keith Rusler <xzekecomax () gmail ! com>
Date: 2010-12-26 5:52:58
Message-ID: 20101226055258.415FCA6090 () git ! kde ! org
[Download RAW message or body]
commit d156f4e131e386426a5e1bf3d3492f6eb043dca3
branch master
Author: Keith Rusler <xzekecomax@gmail.com>
Date: Sun Dec 26 05:52:14 2010 +0000
Moved NickInfo to QSharedData
diff --git a/libaki/irc/nickinfo.cxx b/libaki/irc/nickinfo.cxx
index fd3b8f3..f780c50 100644
--- a/libaki/irc/nickinfo.cxx
+++ b/libaki/irc/nickinfo.cxx
@@ -25,20 +25,20 @@ using namespace Aki;
using namespace Irc;
NickInfo::NickInfo()
+ : _d(new Aki::Irc::NickInfoPrivate)
{
- _d.reset(new Aki::Irc::NickInfoPrivate(this));
}
NickInfo::NickInfo(const QString& hostmask)
+ : _d(new Aki::Irc::NickInfoPrivate)
{
- _d.reset(new Aki::Irc::NickInfoPrivate(this));
setHostmask(hostmask);
}
-NickInfo::NickInfo(const Aki::Irc::NickInfo& nickInfo)
+NickInfo::NickInfo(const Aki::Irc::NickInfo& other)
+ : _d(other._d)
{
- _d.reset(new Aki::Irc::NickInfoPrivate(this));
- setHostmask(nickInfo.hostmask());
+ setHostmask(other.hostmask());
}
NickInfo::~NickInfo()
@@ -46,11 +46,9 @@ NickInfo::~NickInfo()
}
Aki::Irc::NickInfo&
-NickInfo::operator=(const Aki::Irc::NickInfo & rhs)
+NickInfo::operator=(const Aki::Irc::NickInfo& other)
{
- _d.reset(new Aki::Irc::NickInfoPrivate(this));
- setHostmask(rhs.hostmask());
-
+ _d = other._d;
return *this;
}
diff --git a/libaki/irc/nickinfo.hpp b/libaki/irc/nickinfo.hpp
index 68ffce6..05a0666 100644
--- a/libaki/irc/nickinfo.hpp
+++ b/libaki/irc/nickinfo.hpp
@@ -22,7 +22,6 @@
#define AKI_IRC_NICKINFO_HPP
#include "aki.hpp"
-#include <QtCore/QString>
namespace Aki
{
@@ -34,7 +33,7 @@ class LIBAKI_EXPORT NickInfo
public:
NickInfo();
explicit NickInfo(const QString& hostmask);
- NickInfo(const Aki::Irc::NickInfo& nickInfo);
+ NickInfo(const Aki::Irc::NickInfo& other);
~NickInfo();
Aki::Irc::NickInfo& operator=(const Aki::Irc::NickInfo& rhs);
QString host() const;
@@ -43,7 +42,7 @@ public:
void setHostmask(const QString& hostmask);
QString user() const;
private:
- AKI_DECLARE_PRIVATE(NickInfo)
+ QSharedDataPointer<Aki::Irc::NickInfoPrivate> _d;
}; // End of class NickInfo.
} // End of namespace Irc.
} // End of namespace Aki.
diff --git a/libaki/irc/private/nickinfo_p.cxx b/libaki/irc/private/nickinfo_p.cxx
index 094e43c..6f17fa9 100644
--- a/libaki/irc/private/nickinfo_p.cxx
+++ b/libaki/irc/private/nickinfo_p.cxx
@@ -20,11 +20,18 @@
#include "nickinfo_p.hpp"
#include "irc/nickinfo.hpp"
-using namespace Aki::Irc;
+using namespace Aki;
+using namespace Irc;
-NickInfoPrivate::NickInfoPrivate(Aki::Irc::NickInfo* qq)
- : hostmask(QString()),
- _q(qq)
+NickInfoPrivate::NickInfoPrivate()
+ : QSharedData(),
+ hostmask(QString())
+{
+}
+
+NickInfoPrivate::NickInfoPrivate(const Aki::Irc::NickInfoPrivate& other)
+ : QSharedData(other),
+ hostmask(other.hostmask)
{
}
diff --git a/libaki/irc/private/nickinfo_p.hpp b/libaki/irc/private/nickinfo_p.hpp
index 3991079..ba65187 100644
--- a/libaki/irc/private/nickinfo_p.hpp
+++ b/libaki/irc/private/nickinfo_p.hpp
@@ -21,24 +21,23 @@
#ifndef AKI_IRC_NICKINFO_P_HPP
#define AKI_IRC_NICKINFO_P_HPP
-#include <QtCore/QString>
+#include "aki.hpp"
namespace Aki
{
namespace Irc
{
-class NickInfo;
class NickInfoPrivate
+ : public QSharedData
{
public:
- explicit NickInfoPrivate(Aki::Irc::NickInfo* qq);
+ NickInfoPrivate();
+ NickInfoPrivate(const Aki::Irc::NickInfoPrivate& other);
QString host() const;
QString nick() const;
QString user() const;
public:
QString hostmask;
-private:
- Aki::Irc::NickInfo* _q;
}; // End of class NickInfoPrivate.
} // End of namespace Irc.
} // End of namespace Aki.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic