X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fserver.cpp;h=406fa46dab51b875cad6e08bbfbd22217936d6f1;hp=f88efab4d0ee7aeeaa4c1625f843ef6125509762;hb=8699dd758516d0ded076811e8ea656adc95e69d0;hpb=9ac6ae4ee26819874d8843ba09f38a24088d663d diff --git a/src/core/server.cpp b/src/core/server.cpp index f88efab4..406fa46d 100644 --- a/src/core/server.cpp +++ b/src/core/server.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-07 by the Quassel IRC Team * + * Copyright (C) 2005-08 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -44,6 +44,8 @@ Server::Server(UserId uid, NetworkId networkId, QString net, const QVariant &sta _previousState(state) { connect(networkInfo(), SIGNAL(currentServerSet(const QString &)), this, SLOT(sendPerform())); + networkInfo()->setCodecForEncoding("ISO-8859-15"); // FIXME + networkInfo()->setCodecForDecoding("ISO-8859-15"); // FIXME networkInfo()->setNetworkName(net); networkInfo()->setProxy(coreSession()->signalProxy()); } @@ -65,6 +67,39 @@ void Server::run() { exec(); } +QString Server::serverDecode(const QByteArray &string) const { + return networkInfo()->decodeString(string); +} + +QString Server::bufferDecode(const QString &bufferName, const QByteArray &string) const { + Q_UNUSED(bufferName); + // TODO: Implement buffer-specific encodings + return networkInfo()->decodeString(string); +} + +QString Server::userDecode(const QString &userNick, const QByteArray &string) const { + IrcUser *user = networkInfo()->ircUser(userNick); + if(user) return user->decodeString(string); + return networkInfo()->decodeString(string); +} + +QByteArray Server::serverEncode(const QString &string) const { + return networkInfo()->encodeString(string); +} + +QByteArray Server::bufferEncode(const QString &bufferName, const QString &string) const { + Q_UNUSED(bufferName); + // TODO: Implement buffer-specific encodings + return networkInfo()->encodeString(string); +} + +QByteArray Server::userEncode(const QString &userNick, const QString &string) const { + IrcUser *user = networkInfo()->ircUser(userNick); + if(user) return user->encodeString(string); + return networkInfo()->encodeString(string); +} + + void Server::connectToIrc(QString net) { if(net != networkName()) return; // not me! @@ -184,9 +219,11 @@ CoreSession *Server::coreSession() const { /* Exception classes for message handling */ Server::ParseError::ParseError(QString cmd, QString prefix, QStringList params) { + Q_UNUSED(prefix); _msg = QString("Command Parse Error: ") + cmd + params.join(" "); } Server::UnknownCmdError::UnknownCmdError(QString cmd, QString prefix, QStringList params) { - _msg = QString("Unknown Command: ") + cmd; + Q_UNUSED(prefix); + _msg = QString("Unknown Command: ") + cmd + params.join(" "); }