2023-02-11 20:49:42 +00:00
|
|
|
// This file Copyright © 2012-2023 Mnemosyne LLC.
|
2022-08-08 18:05:39 +00:00
|
|
|
// It may be used under GPLv2 (SPDX: GPL-2.0-only), GPLv3 (SPDX: GPL-3.0-only),
|
2022-01-20 18:27:56 +00:00
|
|
|
// or any future license endorsed by Mnemosyne LLC.
|
|
|
|
// License text can be found in the licenses/ folder.
|
2010-04-27 03:10:32 +00:00
|
|
|
|
2016-03-29 16:37:21 +00:00
|
|
|
#pragma once
|
2010-04-27 03:10:32 +00:00
|
|
|
|
2015-12-16 17:57:05 +00:00
|
|
|
#include <QObject>
|
2010-04-27 03:10:32 +00:00
|
|
|
|
2021-12-14 08:43:27 +00:00
|
|
|
#include <libtransmission/tr-macros.h>
|
2020-08-11 18:11:55 +00:00
|
|
|
|
2017-04-19 12:04:45 +00:00
|
|
|
class InteropObject : public QObject
|
2010-04-27 03:10:32 +00:00
|
|
|
{
|
|
|
|
Q_OBJECT
|
2020-08-11 18:11:55 +00:00
|
|
|
TR_DISABLE_COPY_MOVE(InteropObject)
|
2015-12-16 20:01:03 +00:00
|
|
|
|
|
|
|
#ifdef ENABLE_DBUS_INTEROP
|
2017-04-19 12:04:45 +00:00
|
|
|
Q_CLASSINFO("D-Bus Interface", "com.transmissionbt.Transmission")
|
2015-12-16 20:01:03 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef ENABLE_COM_INTEROP
|
2017-04-19 12:04:45 +00:00
|
|
|
Q_CLASSINFO("ClassID", "{0e2c952c-0597-491f-ba26-249d7e6fab49}")
|
|
|
|
Q_CLASSINFO("InterfaceID", "{9402f54f-4906-4f20-ad73-afcfeb5b228d}")
|
|
|
|
Q_CLASSINFO("RegisterObject", "yes")
|
|
|
|
Q_CLASSINFO("CoClassAlias", "QtClient")
|
|
|
|
Q_CLASSINFO("Description", "Transmission Qt Client Class")
|
2015-12-16 20:01:03 +00:00
|
|
|
#endif
|
2010-04-27 03:10:32 +00:00
|
|
|
|
2017-04-19 12:04:45 +00:00
|
|
|
public:
|
2020-11-01 21:47:57 +00:00
|
|
|
explicit InteropObject(QObject* parent = nullptr);
|
2010-04-27 03:10:32 +00:00
|
|
|
|
2017-04-19 12:04:45 +00:00
|
|
|
public slots:
|
2020-11-09 03:31:02 +00:00
|
|
|
bool PresentWindow() const;
|
|
|
|
bool AddMetainfo(QString const& metainfo) const;
|
2010-04-27 03:10:32 +00:00
|
|
|
};
|