qt: Fix filename handling in cryptoconfig
[gpgme.git] / lang / qt / src / cryptoconfig.h
index 858dbb7..d545e59 100644 (file)
@@ -3,7 +3,8 @@
 
     This file is part of qgpgme, the Qt API binding for gpgme
     Copyright (c) 2004 Klarälvdalens Datakonsult AB
-    Copyright (c) 2016 Intevation GmbH
+    Copyright (c) 2016 by Bundesamt für Sicherheit in der Informationstechnik
+    Software engineering by Intevation GmbH
 
     QGpgME is free software; you can redistribute it and/or
     modify it under the terms of the GNU General Public License as
@@ -34,6 +35,7 @@
 #ifndef CRYPTOCONFIG_H
 #define CRYPTOCONFIG_H
 
+#include "qgpgme_export.h"
 #ifdef __cplusplus
 /* we read this file from a C compiler, and are only interested in the
  * enums... */
@@ -50,7 +52,7 @@ namespace QGpgME
 /**
  * Description of a single option
  */
-class CryptoConfigEntry
+class QGPGME_EXPORT CryptoConfigEntry
 {
 
 public:
@@ -247,12 +249,21 @@ public:
      * @return true if the value was changed
      */
     virtual bool isDirty() const = 0;
+
+    // Design change from here on we are closely bound to one implementation
+    // of cryptoconfig. To avoid ABI breaks with every new function we
+    // add real functions from now on.
+
+    /**
+     * @return a stringValueList.
+     */
+    QStringList stringValueList() const;
 };
 
 /**
  * Group containing a set of config options
  */
-class CryptoConfigGroup
+class QGPGME_EXPORT CryptoConfigGroup
 {
 
 public:
@@ -301,7 +312,7 @@ public:
 /**
  * Crypto config for one component (e.g. gpg-agent, dirmngr etc.)
  */
-class CryptoConfigComponent
+class QGPGME_EXPORT CryptoConfigComponent
 {
 
 public:
@@ -341,7 +352,7 @@ public:
 /**
  * Main interface to crypto configuration.
  */
-class CryptoConfig
+class QGPGME_EXPORT CryptoConfig
 {
 
 public:
@@ -378,9 +389,8 @@ public:
     /**
      * Write back changes
      *
-     * @param runtime If this option is set, the changes will take effect at run-time, as
-     * far as this is possible.  Otherwise, they will take effect at the next
-     * start of the respective backend programs.
+     * @param runtime this parameter is ignored. Changes will always
+     * be made with --runtime set.
      */
     virtual void sync(bool runtime) = 0;