/*
 * This file was generated by qdbusxml2cpp version 0.8
 * Command line was: qdbusxml2cpp -p com_deepin_dde_daemon_dock_entry com.deepin.dde.daemon.Dock.Entry.xml
 *
 * qdbusxml2cpp is Copyright (C) 2020 The Qt Company Ltd.
 *
 * This is an auto-generated file.
 * Do not edit! All changes made to it will be lost.
 */

#ifndef COM_DEEPIN_DDE_DAEMON_DOCK_ENTRY_H
#define COM_DEEPIN_DDE_DAEMON_DOCK_ENTRY_H

#include <QtCore/QObject>
#include <QtCore/QByteArray>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QString>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
#include <QtDBus/QtDBus>

#include "types/windowinfomap.h"
#include "types/windowlist.h"

/*
 * Proxy class for interface com.deepin.dde.daemon.Dock.Entry
 */
class ComDeepinDdeDaemonDockEntryInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "com.deepin.dde.daemon.Dock.Entry"; }

public:
    ComDeepinDdeDaemonDockEntryInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr);

    ~ComDeepinDdeDaemonDockEntryInterface();

    Q_PROPERTY(uint CurrentWindow READ currentWindow)
    inline uint currentWindow() const
    { return qvariant_cast< uint >(property("CurrentWindow")); }

    Q_PROPERTY(QString DesktopFile READ desktopFile)
    inline QString desktopFile() const
    { return qvariant_cast< QString >(property("DesktopFile")); }

    Q_PROPERTY(QString Icon READ icon)
    inline QString icon() const
    { return qvariant_cast< QString >(property("Icon")); }

    Q_PROPERTY(QString Id READ id)
    inline QString id() const
    { return qvariant_cast< QString >(property("Id")); }

    Q_PROPERTY(bool IsActive READ isActive)
    inline bool isActive() const
    { return qvariant_cast< bool >(property("IsActive")); }

    Q_PROPERTY(bool IsDocked READ isDocked)
    inline bool isDocked() const
    { return qvariant_cast< bool >(property("IsDocked")); }

    Q_PROPERTY(QString Menu READ menu)
    inline QString menu() const
    { return qvariant_cast< QString >(property("Menu")); }

    Q_PROPERTY(QString Name READ name)
    inline QString name() const
    { return qvariant_cast< QString >(property("Name")); }

    Q_PROPERTY(WindowInfoMap WindowInfos READ windowInfos)
    inline WindowInfoMap windowInfos() const
    { return qvariant_cast< WindowInfoMap >(property("WindowInfos")); }

public Q_SLOTS: // METHODS
    inline QDBusPendingReply<> Activate(uint in0)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(in0);
        return asyncCallWithArgumentList(QStringLiteral("Activate"), argumentList);
    }

    inline QDBusPendingReply<> Check()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("Check"), argumentList);
    }

    inline QDBusPendingReply<> ForceQuit()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("ForceQuit"), argumentList);
    }

    inline QDBusPendingReply<WindowList> GetAllowedCloseWindows()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("GetAllowedCloseWindows"), argumentList);
    }

    inline QDBusPendingReply<> HandleDragDrop(uint in0, const QStringList &in1)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1);
        return asyncCallWithArgumentList(QStringLiteral("HandleDragDrop"), argumentList);
    }

    inline QDBusPendingReply<> HandleMenuItem(uint in0, const QString &in1)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(in0) << QVariant::fromValue(in1);
        return asyncCallWithArgumentList(QStringLiteral("HandleMenuItem"), argumentList);
    }

    inline QDBusPendingReply<> NewInstance(uint in0)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(in0);
        return asyncCallWithArgumentList(QStringLiteral("NewInstance"), argumentList);
    }

    inline QDBusPendingReply<> PresentWindows()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("PresentWindows"), argumentList);
    }

    inline QDBusPendingReply<> RequestDock()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("RequestDock"), argumentList);
    }

    inline QDBusPendingReply<> RequestUndock()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("RequestUndock"), argumentList);
    }

Q_SIGNALS: // SIGNALS
};

namespace com {
  namespace deepin {
    namespace dde {
      namespace daemon {
          typedef ::ComDeepinDdeDaemonDockEntryInterface Entry;
      }
    }
  }
}
#endif
