1 /***************************************************************************
2 * Copyright (C) 2005 by The Quassel Team *
3 * devel@quassel-irc.org *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
15 * You should have received a copy of the GNU General Public License *
16 * along with this program; if not, write to the *
17 * Free Software Foundation, Inc., *
18 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
19 ***************************************************************************/
27 #include <QDomDocument>
29 extern void messageHandler(QtMsgType type, const char *msg);
32 if(global) qFatal("Trying to instantiate more than one Global object!");
33 qInstallMsgHandler(messageHandler);
34 qRegisterMetaType<Message>("Message");
35 qRegisterMetaTypeStreamOperators<Message>("Message");
40 void Global::setLogger(Logger *) {
46 QVariant Global::getData(QString key, QVariant defval) {
49 if(data.contains(key)) d = data[key];
52 //qDebug() << "getData("<<key<<"): " << d;
56 QStringList Global::getKeys() {
64 void Global::putData(QString key, QVariant d) {
68 emit dataPutLocally(key);
71 void Global::updateData(QString key, QVariant d) {
75 emit dataUpdatedRemotely(key);
79 void Global::initIconMap() {
80 // Do not depend on GUI in core!
82 QDomDocument doc("IconMap");
83 QFile file("images/iconmap.xml");
84 if(!file.open(QIODevice::ReadOnly)) {
85 qDebug() << "Error opening iconMap file!";
87 } else if(!doc.setContent(&file)) {
89 qDebug() << "Error parsing iconMap file!";
99 * Retrieves an icon determined by its symbolic name. The mapping shall later
100 * be performed by a theme manager or something like that.
101 * @param symbol Symbol of requested icon
102 * @return Pointer to a newly created QIcon
105 //QIcon *Global::getIcon(QString /*symbol*/) {
106 //if(symbol == "connect"
112 Global::RunMode Global::runMode;