// This file is generated by kconfig_compiler_kf6 from virtualkeyboardsettings.kcfg.
// All changes you do to this file will be lost.
#ifndef VIRTUALKEYBOARDSETTINGS_H
#define VIRTUALKEYBOARDSETTINGS_H

#include <qglobal.h>
#include <kconfigskeleton.h>
#include <QCoreApplication>
#include <QDebug>

class VirtualKeyboardSettings : public KConfigSkeleton
{
  Q_OBJECT
  public:

    VirtualKeyboardSettings( QObject *parent = nullptr );
    ~VirtualKeyboardSettings() override;

    /**
      Set InputMethod
    */
    void setInputMethod( const QString & v )
    {
      if (v != mInputMethod && !isInputMethodImmutable()) {
        mInputMethod = v;
        Q_EMIT InputMethodChanged();
      }
    }

    Q_PROPERTY(QString inputMethod READ inputMethod WRITE setInputMethod NOTIFY InputMethodChanged)
    Q_PROPERTY(bool isInputMethodImmutable READ isInputMethodImmutable CONSTANT)
    /**
      Get InputMethod
    */
    QString inputMethod() const
    {
      return mInputMethod;
    }

    /**
      Is InputMethod Immutable
    */
    bool isInputMethodImmutable() const
    {
      return isImmutable( QStringLiteral( "InputMethod" ) );
    }


    enum {
      signalInputMethodChanged = 1
    };

  Q_SIGNALS:
    void InputMethodChanged();

  private:
    void itemChanged(quint64 signalFlag);

  protected:

    // Wayland
    QString mInputMethod;
    QString defaultInputMethodValue_helper() const;
};

#endif

