From a6d58bb6052ac8cb01805a48c4ad2f129126116f Mon Sep 17 00:00:00 2001 From: tpearson Date: Wed, 24 Feb 2010 02:13:59 +0000 Subject: Added KDE3 version of kvirc git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kvirc@1095341 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- src/kvilib/irc/kvi_useridentity.h | 145 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 src/kvilib/irc/kvi_useridentity.h (limited to 'src/kvilib/irc/kvi_useridentity.h') diff --git a/src/kvilib/irc/kvi_useridentity.h b/src/kvilib/irc/kvi_useridentity.h new file mode 100644 index 00000000..c1018f1a --- /dev/null +++ b/src/kvilib/irc/kvi_useridentity.h @@ -0,0 +1,145 @@ +#ifndef _KVI_USERIDENTITY_H_ +#define _KVI_USERIDENTITY_H_ +//============================================================================= +// +// File : kvi_useridentity.h +// Created on Sun 21 Jan 2007 04:31:47 by Szymon Stefanek +// +// This file is part of the KVIrc IRC Client distribution +// Copyright (C) 2007 Szymon Stefanek +// +// This program is FREE software. You can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your opinion) any later version. +// +// This program 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 General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, write to the Free Software Foundation, +// Inc. ,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +// +//============================================================================= + +#include "kvi_settings.h" +#include "kvi_heapobject.h" +#include "kvi_pixmap.h" +#include "kvi_config.h" +#include "kvi_pointerhashtable.h" + +class KVILIB_API KviUserIdentity : public KviHeapObject +{ + friend class KviUserIdentityManager; +public: + KviUserIdentity() + : KviHeapObject() + { + } + ~KviUserIdentity() + { + } +protected: + QString m_szId; // the identity set name + + QString m_szNickName; + + QString m_szAltNickName1; + QString m_szAltNickName2; + QString m_szAltNickName3; + + QString m_szUserName; + QString m_szRealName; + QString m_szPassword; + + KviPixmap m_pixAvatar; + + QString m_szPartMessage; + QString m_szQuitMessage; + + QString m_szAge; + QString m_szGender; + QString m_szLocation; + QString m_szLanguages; + QString m_szOtherInfo; + + QString m_szUserMode; + + QString m_szOnConnectCommand; + QString m_szOnLoginCommand; +public: + const QString & id() const { return m_szId; }; + const QString & nickName() const { return m_szNickName; }; + const QString & altNickName1() const { return m_szAltNickName1; }; + const QString & altNickName2() const { return m_szAltNickName2; }; + const QString & altNickName3() const { return m_szAltNickName3; }; + const QString & userName() const { return m_szUserName; }; + const QString & password() const { return m_szPassword; }; + const KviPixmap & avatar() const { return m_pixAvatar; }; + const QString & partMessage() const { return m_szPartMessage; }; + const QString & quitMessage() const { return m_szQuitMessage; }; + const QString & age() const { return m_szAge; }; + const QString & gender() const { return m_szGender; }; + const QString & location() const { return m_szLocation; }; + const QString & languages() const { return m_szLanguages; }; + const QString & otherInfo() const { return m_szOtherInfo; }; + const QString & userMode() const { return m_szUserMode; }; + const QString & onConnectCommand() const { return m_szOnConnectCommand; }; + const QString & onLoginCommand() const { return m_szOnLoginCommand; }; + void setId(const QString &szId){ m_szId = szId; }; + void setNickName(const QString &szNickName){ m_szNickName = szNickName; }; + void setAltNickName1(const QString &szNickName){ m_szAltNickName1 = szNickName; }; + void setAltNickName2(const QString &szNickName){ m_szAltNickName2 = szNickName; }; + void setAltNickName3(const QString &szNickName){ m_szAltNickName3 = szNickName; }; + void setUserName(const QString &szUserName){ m_szUserName = szUserName; }; + void setRealName(const QString &szRealName){ m_szRealName = szRealName; }; + void setPassword(const QString &szPassword){ m_szPassword = szPassword; }; + void setAvatar(const KviPixmap &pix){ m_pixAvatar = pix; }; + void setPartMessage(const QString &szMsg){ m_szPartMessage = szMsg; }; + void setQuitMessage(const QString &szMsg){ m_szQuitMessage = szMsg; }; + void setAge(const QString &szAge){ m_szAge = szAge; }; + void setGender(const QString &szGender){ m_szGender = szGender; }; + void setLocation(const QString &szLocation){ m_szLocation = szLocation; }; + void setLanguages(const QString &szLanguages){ m_szLanguages = szLanguages; }; + void setOtherInfo(const QString &szOtherInfo){ m_szOtherInfo = szOtherInfo; }; + void setUserMode(const QString &szUserMode){ m_szUserMode = szUserMode; }; + void setOnConnectCommand(const QString &szOnConnectCommand){ m_szOnConnectCommand = szOnConnectCommand; }; + void setOnLoginCommand(const QString &szOnLoginCommand){ m_szOnLoginCommand = szOnLoginCommand; }; +protected: + void copyFrom(const KviUserIdentity &src); + bool save(KviConfig &cfg); + bool load(KviConfig &cfg); +}; + +class KVILIB_API KviUserIdentityManager : public KviHeapObject +{ +protected: + KviUserIdentityManager(); + ~KviUserIdentityManager(); +protected: + static KviUserIdentityManager * m_pInstance; + KviPointerHashTable * m_pIdentityDict; + QString m_szDefaultIdentity; +public: + static void init(); + static void done(); + static KviUserIdentityManager * instance(){ return m_pInstance; }; + + KviPointerHashTable * identityDict(){ return m_pIdentityDict; }; + const KviUserIdentity * findIdentity(const QString &szId){ return m_pIdentityDict->find(szId); }; + // NEVER NULL + const KviUserIdentity * defaultIdentity(); + + void setDefaultIdentity(const QString &szIdentityId){ m_szDefaultIdentity = szIdentityId; }; + + KviUserIdentityManager * createWorkingCopy(); + void copyFrom(KviUserIdentityManager * pWorkingCopy); + void releaseWorkingCopy(KviUserIdentityManager * pWorkingCopy); + + void save(const QString &szFileName); + void load(const QString &szFileName); +}; + +#endif //!_KVI_USERIDENTITY_H_ -- cgit v1.2.1