DtkSystemSettings  1.0.3
dtk library for systemsettings.
dloginseat.h
浏览该文件的文档.
1// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#pragma once
6
7#include <qobject.h>
8#include <dexpected.h>
9
10#include "dtklogin_global.h"
11
12DLOGIN_BEGIN_NAMESPACE
13using DCORE_NAMESPACE::DExpected;
14class DLoginSeatPrivate;
15
16class DLoginSeat : public QObject
17{
18 Q_OBJECT
19
20public:
21 ~DLoginSeat() override;
22
23 Q_PROPERTY(QStringList sessions READ sessions);
24 Q_PROPERTY(bool canGraphical READ canGraphical);
25 Q_PROPERTY(bool canTTY READ canTTY);
26 Q_PROPERTY(bool idleHint READ idleHint);
27 Q_PROPERTY(QString id READ id);
28 Q_PROPERTY(QString activeSession READ activeSession);
29 Q_PROPERTY(QDateTime idleSinceHint READ idleSinceHint);
30 Q_PROPERTY(quint64 idleSinceHintMonotonic READ idleSinceHintMonotonic);
31
32 bool canGraphical() const;
33 bool canTTY() const;
34 bool idleHint() const;
35 QStringList sessions() const;
36 QString id() const;
37 QString activeSession() const;
38 QDateTime idleSinceHint() const;
39 quint64 idleSinceHintMonotonic() const;
40
41public Q_SLOTS:
42 DExpected<void> activateSession(const QString &sessionId);
43 DExpected<void> switchTo(quint32 VTNr);
44
45private:
46 friend class DLoginManager;
47 explicit DLoginSeat(const QString &path, QObject *parent = nullptr);
48 QScopedPointer<DLoginSeatPrivate> d_ptr;
49 Q_DECLARE_PRIVATE(DLoginSeat)
50};
51DLOGIN_END_NAMESPACE
登陆管理类
Definition: dloginmanager.h:35
定义了管理用户seat的接口。
Definition: dloginseat.h:17
bool canTTY() const
判断是否适合文本登录 该属性无需传入值,若适合返回true不适合返回false
QString id() const
对seat的id进行编码
quint64 idleSinceHintMonotonic() const
对空闲状态进行编码
QDateTime idleSinceHint() const
对空闲状态进行编码
DExpected< void > switchTo(quint32 VTNr)
切换到虚拟终端上的会话
DExpected< void > activateSession(const QString &sessionId)
将指定id的会话带到前台
bool canGraphical() const
判断是否适合图形会话 该属性无需传入值,若适合返回true不适合返回false
bool idleHint() const
判断会话的空闲状态 该属性无需传入值,若会话空闲返回true不空闲返回false
QStringList sessions() const
会话属性是这个Seat的所有当前会话的数组,由会话ID组成
QString activeSession() const
如果存在,则对当前活动的会话进行编码 是*一个*由会话id和路径对象组成的结构