/*
 * This file was generated by qdbusxml2cpp-fix version 0.8
 * Command line was: qdbusxml2cpp-fix -c TrackPoint -p generated/com_deepin_daemon_inputdevice_trackpoint /build/deepin-qt-dbus-factory/src/dde-qt-dbus-factory-0.2.1/xml/com.deepin.daemon.InputDevice.TrackPoint.xml
 *
 * qdbusxml2cpp-fix is Copyright (C) 2016 Deepin Technology Co., Ltd.
 *
 * This is an auto-generated file.
 * Do not edit! All changes made to it will be lost.
 */

#ifndef COM_DEEPIN_DAEMON_INPUTDEVICE_TRACKPOINT_H
#define COM_DEEPIN_DAEMON_INPUTDEVICE_TRACKPOINT_H

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

#include <DBusExtendedAbstractInterface>
#include <QtDBus/QtDBus>


/*
 * Proxy class for interface com.deepin.daemon.InputDevice.TrackPoint
 */
class __TrackPoint : public DBusExtendedAbstractInterface
{
    Q_OBJECT

public:
    static inline const char *staticInterfaceName()
    { return "com.deepin.daemon.InputDevice.TrackPoint"; }

public:
    explicit __TrackPoint(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = 0);

    ~__TrackPoint();

    Q_PROPERTY(QString DeviceList READ deviceList NOTIFY DeviceListChanged)
    inline QString deviceList()
    { return qvariant_cast< QString >(internalPropGet("DeviceList", &m_DeviceList)); }

    Q_PROPERTY(bool Exist READ exist NOTIFY ExistChanged)
    inline bool exist()
    { return qvariant_cast< bool >(internalPropGet("Exist", &m_Exist)); }

    Q_PROPERTY(bool LeftHanded READ leftHanded WRITE setLeftHanded NOTIFY LeftHandedChanged)
    inline bool leftHanded()
    { return qvariant_cast< bool >(internalPropGet("LeftHanded", &m_LeftHanded)); }
    inline void setLeftHanded(bool value)
    { internalPropSet("LeftHanded", QVariant::fromValue(value), &m_LeftHanded); }

    Q_PROPERTY(bool MiddleButtonEnabled READ middleButtonEnabled WRITE setMiddleButtonEnabled NOTIFY MiddleButtonEnabledChanged)
    inline bool middleButtonEnabled()
    { return qvariant_cast< bool >(internalPropGet("MiddleButtonEnabled", &m_MiddleButtonEnabled)); }
    inline void setMiddleButtonEnabled(bool value)
    { internalPropSet("MiddleButtonEnabled", QVariant::fromValue(value), &m_MiddleButtonEnabled); }

    Q_PROPERTY(int MiddleButtonTimeout READ middleButtonTimeout WRITE setMiddleButtonTimeout NOTIFY MiddleButtonTimeoutChanged)
    inline int middleButtonTimeout()
    { return qvariant_cast< int >(internalPropGet("MiddleButtonTimeout", &m_MiddleButtonTimeout)); }
    inline void setMiddleButtonTimeout(int value)
    { internalPropSet("MiddleButtonTimeout", QVariant::fromValue(value), &m_MiddleButtonTimeout); }

    Q_PROPERTY(double MotionAcceleration READ motionAcceleration WRITE setMotionAcceleration NOTIFY MotionAccelerationChanged)
    inline double motionAcceleration()
    { return qvariant_cast< double >(internalPropGet("MotionAcceleration", &m_MotionAcceleration)); }
    inline void setMotionAcceleration(double value)
    { internalPropSet("MotionAcceleration", QVariant::fromValue(value), &m_MotionAcceleration); }

    Q_PROPERTY(double MotionScaling READ motionScaling WRITE setMotionScaling NOTIFY MotionScalingChanged)
    inline double motionScaling()
    { return qvariant_cast< double >(internalPropGet("MotionScaling", &m_MotionScaling)); }
    inline void setMotionScaling(double value)
    { internalPropSet("MotionScaling", QVariant::fromValue(value), &m_MotionScaling); }

    Q_PROPERTY(double MotionThreshold READ motionThreshold WRITE setMotionThreshold NOTIFY MotionThresholdChanged)
    inline double motionThreshold()
    { return qvariant_cast< double >(internalPropGet("MotionThreshold", &m_MotionThreshold)); }
    inline void setMotionThreshold(double value)
    { internalPropSet("MotionThreshold", QVariant::fromValue(value), &m_MotionThreshold); }

    Q_PROPERTY(bool WheelEmulation READ wheelEmulation WRITE setWheelEmulation NOTIFY WheelEmulationChanged)
    inline bool wheelEmulation()
    { return qvariant_cast< bool >(internalPropGet("WheelEmulation", &m_WheelEmulation)); }
    inline void setWheelEmulation(bool value)
    { internalPropSet("WheelEmulation", QVariant::fromValue(value), &m_WheelEmulation); }

    Q_PROPERTY(int WheelEmulationButton READ wheelEmulationButton WRITE setWheelEmulationButton NOTIFY WheelEmulationButtonChanged)
    inline int wheelEmulationButton()
    { return qvariant_cast< int >(internalPropGet("WheelEmulationButton", &m_WheelEmulationButton)); }
    inline void setWheelEmulationButton(int value)
    { internalPropSet("WheelEmulationButton", QVariant::fromValue(value), &m_WheelEmulationButton); }

    Q_PROPERTY(int WheelEmulationTimeout READ wheelEmulationTimeout WRITE setWheelEmulationTimeout NOTIFY WheelEmulationTimeoutChanged)
    inline int wheelEmulationTimeout()
    { return qvariant_cast< int >(internalPropGet("WheelEmulationTimeout", &m_WheelEmulationTimeout)); }
    inline void setWheelEmulationTimeout(int value)
    { internalPropSet("WheelEmulationTimeout", QVariant::fromValue(value), &m_WheelEmulationTimeout); }

    Q_PROPERTY(bool WheelHorizScroll READ wheelHorizScroll WRITE setWheelHorizScroll NOTIFY WheelHorizScrollChanged)
    inline bool wheelHorizScroll()
    { return qvariant_cast< bool >(internalPropGet("WheelHorizScroll", &m_WheelHorizScroll)); }
    inline void setWheelHorizScroll(bool value)
    { internalPropSet("WheelHorizScroll", QVariant::fromValue(value), &m_WheelHorizScroll); }

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

Q_SIGNALS: // SIGNALS
// begin property changed signals
    void DeviceListChanged(const QString & value) const;
    void ExistChanged(bool  value) const;
    void LeftHandedChanged(bool  value) const;
    void MiddleButtonEnabledChanged(bool  value) const;
    void MiddleButtonTimeoutChanged(int  value) const;
    void MotionAccelerationChanged(double  value) const;
    void MotionScalingChanged(double  value) const;
    void MotionThresholdChanged(double  value) const;
    void WheelEmulationChanged(bool  value) const;
    void WheelEmulationButtonChanged(int  value) const;
    void WheelEmulationTimeoutChanged(int  value) const;
    void WheelHorizScrollChanged(bool  value) const;

// begin private slots
private Q_SLOTS:
    void onPropertyChanged(const QString &propName, const QVariant &value);

// begin private member vaiables
private:
    QString m_DeviceList;
    bool m_Exist;
    bool m_LeftHanded;
    bool m_MiddleButtonEnabled;
    int m_MiddleButtonTimeout;
    double m_MotionAcceleration;
    double m_MotionScaling;
    double m_MotionThreshold;
    bool m_WheelEmulation;
    int m_WheelEmulationButton;
    int m_WheelEmulationTimeout;
    bool m_WheelHorizScroll;
};

namespace com {
  namespace deepin {
    namespace daemon {
      namespace inputdevice {
        typedef ::__TrackPoint TrackPoint;
      }
    }
  }
}
#endif
