/* libnotify-qt - library for sending notifications implemented in Qt
 * Copyright (C) 2010-2011 Vojtech Drbohlav <vojta.d@gmail.com>
 *
 * 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.
 *
 * 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, see <http://www.gnu.org/licenses/>.
 */

#include "Interface.h"

org::freedesktop::Notifications::Notifications(const QString & service,
        const QString & path,
        const QDBusConnection & connection,
        QObject * parent) :
	QDBusAbstractInterface(service, path, staticInterfaceName(), connection, parent)
{
}

org::freedesktop::Notifications::~Notifications()
{
}

QDBusPendingReply<QStringList> org::freedesktop::Notifications::getCapabilities()
{
	return asyncCall("GetCapabilities");
}

QDBusPendingReply<quint32> org::freedesktop::Notifications::notify(const QString & appName, quint32 replacesId,
        const QString & appIcon,
        const QString & summary, const QString & body,
        const QStringList & actions,
        const QVariantMap & hints,
        qint32 timeout)
{
	return asyncCall("Notify", appName, replacesId, appIcon, summary, body, actions, hints, timeout);
}

QDBusPendingReply<> org::freedesktop::Notifications::closeNotification(quint32 id)
{
	return asyncCall("CloseNotification", id);
}

QDBusPendingReply<QString, QString, QString> org::freedesktop::Notifications::getServerInformation()
{
	return asyncCall("GetServerInformation");
}
