X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fglobal.cpp;h=9ecef3c671ec37a121b6201f596ae73061ffbd38;hp=3c82e815daa8a55cdf00b1c69711ed0592dcd49a;hb=45d9ea6ed5d64eec3ca351fdcf7610c7cff3529d;hpb=077d44f36d2f5c730283ef6be839aea7dd073d56 diff --git a/src/common/global.cpp b/src/common/global.cpp index 3c82e815..9ecef3c6 100644 --- a/src/common/global.cpp +++ b/src/common/global.cpp @@ -1,11 +1,11 @@ /*************************************************************************** - * Copyright (C) 2005-07 by The Quassel IRC Development Team * + * Copyright (C) 2005-07 by the Quassel IRC Team * * devel@quassel-irc.org * * * * 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 option) any later version. * + * (at your option) version 3. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * @@ -17,97 +17,13 @@ * Free Software Foundation, Inc., * * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ +#include #include "global.h" #include "logger.h" -#include "core.h" -#include "message.h" -#include "util.h" - -#include -#include extern void messageHandler(QtMsgType type, const char *msg); -Global *Global::instanceptr = 0; - -Global * Global::instance() { - if(instanceptr) return instanceptr; - return instanceptr = new Global(); -} - -void Global::destroy() { - delete instanceptr; - instanceptr = 0; -} - -Global::Global() { - qInstallMsgHandler(messageHandler); - qRegisterMetaType("Message"); - qRegisterMetaTypeStreamOperators("Message"); - qRegisterMetaType("BufferId"); - qRegisterMetaTypeStreamOperators("BufferId"); - - guiUser = 0; -} - -Global::~Global() { - - -} - -void Global::setGuiUser(UserId uid) { - guiUser = uid; -} - -QVariant Global::data(QString key, QVariant defval) { - return data(guiUser, key, defval); -} - -QVariant Global::data(UserId uid, QString key, QVariant defval) { - QVariant d; - mutex.lock(); - if(instance()->datastore[uid].contains(key)) d = instance()->datastore[uid][key]; - else d = defval; - mutex.unlock(); - //qDebug() << "getData("<datastore[uid].keys(); - mutex.unlock(); - return k; -} - -void Global::putData(QString key, QVariant d) { - putData(guiUser, key, d); -} - -void Global::putData(UserId uid, QString key, QVariant d) { - mutex.lock(); - instance()->datastore[uid][key] = d; - mutex.unlock(); - emit instance()->dataPutLocally(uid, key); -} - -void Global::updateData(QString key, QVariant d) { - updateData(guiUser, key, d); -} - -void Global::updateData(UserId uid, QString key, QVariant d) { - mutex.lock(); - instance()->datastore[uid][key] = d; - mutex.unlock(); - emit instance()->dataUpdatedRemotely(uid, key); -} - /* not done yet */ /* void Global::initIconMap() { @@ -127,36 +43,6 @@ void Global::initIconMap() { } */ -/**************************************************************************************/ - - - -BufferId::BufferId(uint _id, QString _net, QString _buf, uint _gid) : id(_id), gid(_gid), net(_net), buf(_buf) { - - -} - -QString BufferId::buffer() { - if(isChannelName(buf)) return buf; - else return nickFromMask(buf); -} - -QDataStream &operator<<(QDataStream &out, const BufferId &bufferId) { - out << bufferId.id << bufferId.gid << bufferId.net.toUtf8() << bufferId.buf.toUtf8(); -} - -QDataStream &operator>>(QDataStream &in, BufferId &bufferId) { - QByteArray n, b; - BufferId i; - in >> bufferId.id >> bufferId.gid >> n >> b; - bufferId.net = QString::fromUtf8(n); - bufferId.buf = QString::fromUtf8(b); -} - -uint qHash(const BufferId &bid) { - return qHash(bid.id); -} - /** * Retrieves an icon determined by its symbolic name. The mapping shall later * be performed by a theme manager or something like that. @@ -170,7 +56,4 @@ uint qHash(const BufferId &bid) { // return 0; //} -QMutex Global::mutex; Global::RunMode Global::runMode; -UserId Global::guiUser; -QString Global::quasselDir;