view dbus_types.h @ 11:98485ebbdb86 default tip

LayoutView: WidgetViewBox fix
author Goffi <goffi@goffi.org>
date Sat, 27 Aug 2011 00:31:20 +0200
parents 017925589d4c
children
line wrap: on
line source

/*
Bellaciao: a Salut à Toi frontend
Copyright (C) 2011  Jérôme Poisson (goffi@goffi.org)

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) 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 Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef DBUS_TYPES_H
#define DBUS_TYPES_H

#include <QtDBus>
#include <QHash>
#include <QMap>
#include <QString>
#include <QList>
#include "contact.h"

typedef QHash<QString, QString> StringDict;

struct MessageT {
    QString from_jid;
    QString text;
};

typedef QMap<int,MessageT> HistoryT;

struct MenuT {
    QString category;
    QString name;
    QString type;
};

struct PresenceInfoT {
    QString show;
    int priority;
    QHash<QString, QString> statuses;
};

typedef QMap<QString,PresenceInfoT> ResourcePresenceT;

typedef QHash<QString,ResourcePresenceT> PresenceStatusT;

typedef QHash<QString, StringDict> ActionResultExtDataT;

Q_DECLARE_METATYPE(StringDict);
Q_DECLARE_METATYPE(Contact);
Q_DECLARE_METATYPE(QList<Contact>);
Q_DECLARE_METATYPE(HistoryT);
Q_DECLARE_METATYPE(PresenceStatusT);
Q_DECLARE_METATYPE(MenuT);
Q_DECLARE_METATYPE(QList<MenuT>);
Q_DECLARE_METATYPE(ActionResultExtDataT);

QDBusArgument &operator<<(QDBusArgument &argument, const Jid &jid);
const QDBusArgument &operator>>(const QDBusArgument &argument, Jid &jid);
QDBusArgument &operator<<(QDBusArgument &argument, const Contact &contact);
const QDBusArgument &operator>>(const QDBusArgument &argument, Contact &contact);
QDBusArgument &operator<<(QDBusArgument &argument, const MenuT &menu);
const QDBusArgument &operator>>(const QDBusArgument &argument, MenuT &menu);
QDBusArgument &operator<<(QDBusArgument &argument, const MessageT &message);
const QDBusArgument &operator>>(const QDBusArgument &argument, MessageT &message);
QDBusArgument &operator<<(QDBusArgument &argument, const PresenceInfoT &presence_info);
const QDBusArgument &operator>>(const QDBusArgument &argument, PresenceInfoT &presence_info);

#endif