]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blobdiff - liblightdm-qt/QLightDM/greeter.h
First pass at reset support
[sojka/lightdm.git] / liblightdm-qt / QLightDM / greeter.h
index 3888210ab473364694fa8a33e77bd80d185dbe66..8abf5e9260ba686ca4cc4c0ae4335cdfc94384af 100644 (file)
@@ -5,9 +5,8 @@
  *
  * This library is free software; you can redistribute it and/or modify it under
  * the terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 3 of the License, or (at your option) any
- * later version. See http://www.gnu.org/copyleft/lgpl.html the full text of the
- * license.
+ * Software Foundation; either version 2 or version 3 of the License.
+ * See http://www.gnu.org/copyleft/lgpl.html the full text of the license.
  */
 
 #ifndef QLIGHTDM_GREETER_H
@@ -24,6 +23,21 @@ namespace QLightDM
 class Q_DECL_EXPORT Greeter : public QObject
 {
     Q_OBJECT
+    
+    Q_PROPERTY(bool authenticated READ isAuthenticated ) //NOTFIY authenticationComplete
+    Q_PROPERTY(QString authenticationUser READ authenticationUser )
+    Q_PROPERTY(QString defaultSession READ defaultSessionHint CONSTANT)
+    Q_PROPERTY(QString selectUser READ selectUserHint CONSTANT)
+    Q_PROPERTY(bool selectGuest READ selectGuestHint CONSTANT)
+
+    Q_PROPERTY(QString hostname READ hostname CONSTANT)
+    Q_PROPERTY(bool hasGuestAccount READ hasGuestAccountHint CONSTANT)
+    Q_PROPERTY(bool locked READ lockHint CONSTANT)
+    
+    Q_PROPERTY(QString hostname READ hostname CONSTANT)
+
+    Q_ENUMS(PromptType MessageType)
+
 public:
     enum PromptType {
         PromptTypeQuestion,
@@ -41,6 +55,9 @@ public:
     QString getHint(const QString &name) const;   
     QString defaultSessionHint() const;
     bool hideUsersHint() const;
+    bool showManualLoginHint() const;
+    bool showRemoteLoginHint() const;
+    bool lockHint () const;
     bool hasGuestAccountHint() const;
     QString selectUserHint() const;
     bool selectGuestHint() const;
@@ -51,27 +68,34 @@ public:
     bool inAuthentication() const;
     bool isAuthenticated() const;
     QString authenticationUser() const;
+    QString hostname() const;
 
-public slots:
+public Q_SLOTS:
     bool connectSync();
     void authenticate(const QString &username=QString());
     void authenticateAsGuest();
+    void authenticateAutologin();
+    void authenticateRemote(const QString &session=QString(), const QString &username=QString());
     void respond(const QString &response);
     void cancelAuthentication();
     void setLanguage (const QString &language);
+    void setResettable (bool resettable);
     bool startSessionSync(const QString &session=QString());
+    QString ensureSharedDataDirSync(const QString &username);
 
-signals:
+Q_SIGNALS:
     void showMessage(QString text, QLightDM::Greeter::MessageType type);
     void showPrompt(QString text, QLightDM::Greeter::PromptType type);
     void authenticationComplete();
     void autologinTimerExpired();
+    void idle();
+    void reset();
 
 private:
     GreeterPrivate *d_ptr;
     Q_DECLARE_PRIVATE(Greeter)
 
 };
-};
+}
 
 #endif // QLIGHTDM_GREETER_H