]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blob - doc/tmpl/greeter.sgml
c3e2761e084de9c80a7fca7236c87a0e8eac249c
[sojka/lightdm.git] / doc / tmpl / greeter.sgml
1 <!-- ##### SECTION Title ##### -->
2 Greeter Interface
3
4 <!-- ##### SECTION Short_Description ##### -->
5 Make a connection to the LightDM daemon and authenticate users
6
7 <!-- ##### SECTION Long_Description ##### -->
8 <para>
9 #LightDMGreeter is an object that manages the connection to the LightDM server and provides common greeter functionality.
10 </para>
11 <para>
12 <example>
13 <title>Example Greeter</title>
14 <programlisting><![CDATA[
15 int main ()
16 {
17     LightDMGreeter *greeter = lightdm_greeter_new ();
18
19     g_object_connect (greeter, "connected", G_CALLBACK (connected_cb), NULL);
20     g_object_connect (greeter, "show-prompt", G_CALLBACK (show_prompt_cb), NULL);
21     g_object_connect (greeter, "authentication-complete", G_CALLBACK (authentication_complete_cb), NULL);
22     g_object_connect (greeter, "session-failed", G_CALLBACK (session_failed_cb), NULL);
23     g_object_connect (greeter, "quit", G_CALLBACK (quit_cb), NULL);
24
25     if (!lightdm_greeter_connect_to_server (LIGHTDM_GREETER (greeter))) {
26         // Log an error
27         return 0;
28     }
29 }
30
31 static void connected_cb (LightDMGreeter *greeter)
32 {
33     // Start authentication
34     lightdm_greeter_authenticate (greeter, NULL);
35 }
36
37 static void show_prompt_cb (LightDMGreeter *greeter, const char *text, LightDMPromptType type)
38 {
39     // Show the user the message and prompt for some response
40     gchar *secret = prompt_user (text, type);
41
42     // Give the result to the user
43     lightdm_greeter_respond (greeter, response);
44 }
45
46 static void authentication_complete_cb (LightDMGreeter *greeter)
47 {
48     if (lightdm_greeter_get_is_authenticated (greeter)) {
49         // Start the user session
50         lightdm_greeter_start_default_session (greeter);
51     }
52     else {
53         // Display a warning and reset the greeter
54         reset_login_screen (``Incorrect password, please try again'');
55     }
56 }
57
58 static void session_failed_cb (LightDMGreeter *greeter)
59 {
60     // Display a warning and reset the greeter
61     reset_login_screen (``Failed to login'');
62 }
63
64 static void quit_cb (LightDMGreeter *greeter)
65 {
66     // Clean up
67     // ...
68     
69     exit (0);
70 }
71 ]]></programlisting>
72 </example>
73 </para>
74
75 <!-- ##### SECTION See_Also ##### -->
76 <para>
77
78 </para>
79
80 <!-- ##### SECTION Stability_Level ##### -->
81
82
83 <!-- ##### SECTION Image ##### -->
84
85
86 <!-- ##### USER_FUNCTION connected ##### -->
87 <para>
88
89 </para>
90
91 @greeter: 
92
93
94 <!-- ##### USER_FUNCTION autologin_timer_expired ##### -->
95 <para>
96
97 </para>
98
99 @greeter: 
100
101
102 <!-- ##### USER_FUNCTION show_message ##### -->
103 <para>
104
105 </para>
106
107 @greeter: 
108 @text: 
109 @type: 
110
111
112 <!-- ##### USER_FUNCTION show_prompt ##### -->
113 <para>
114
115 </para>
116
117 @greeter: 
118 @text: 
119 @type: 
120
121
122 <!-- ##### USER_FUNCTION authentication_complete ##### -->
123 <para>
124
125 </para>
126
127 @greeter: 
128
129
130 <!-- ##### USER_FUNCTION session_failed ##### -->
131 <para>
132
133 </para>
134
135 @greeter: 
136
137
138 <!-- ##### USER_FUNCTION quit ##### -->
139 <para>
140
141 </para>
142
143 @greeter: 
144
145
146 <!-- ##### ENUM LightDMMessageType ##### -->
147 <para>
148
149 </para>
150
151 @LIGHTDM_MESSAGE_TYPE_INFO: 
152 @LIGHTDM_MESSAGE_TYPE_ERROR: 
153
154 <!-- ##### ENUM LightDMPromptType ##### -->
155 <para>
156
157 </para>
158
159 @LIGHTDM_PROMPT_TYPE_QUESTION: 
160 @LIGHTDM_PROMPT_TYPE_SECRET: 
161
162 <!-- ##### FUNCTION lightdm_greeter_new ##### -->
163 <para>
164
165 </para>
166
167 @void: 
168 @Returns: 
169
170
171 <!-- ##### FUNCTION lightdm_greeter_connect_to_server ##### -->
172 <para>
173
174 </para>
175
176 @greeter: 
177 @Returns: 
178
179
180 <!-- ##### FUNCTION lightdm_greeter_get_default_session_hint ##### -->
181 <para>
182
183 </para>
184
185 @greeter: 
186 @Returns: 
187
188
189 <!-- ##### FUNCTION lightdm_greeter_get_hint ##### -->
190 <para>
191
192 </para>
193
194 @greeter: 
195 @name: 
196 @Returns: 
197
198
199 <!-- ##### FUNCTION lightdm_greeter_get_has_guest_account_hint ##### -->
200 <para>
201
202 </para>
203
204 @greeter: 
205 @Returns: 
206
207
208 <!-- ##### FUNCTION lightdm_greeter_get_hide_users_hint ##### -->
209 <para>
210
211 </para>
212
213 @greeter: 
214 @Returns: 
215
216
217 <!-- ##### FUNCTION lightdm_greeter_get_select_user_hint ##### -->
218 <para>
219
220 </para>
221
222 @greeter: 
223 @Returns: 
224
225
226 <!-- ##### FUNCTION lightdm_greeter_get_select_guest_hint ##### -->
227 <para>
228
229 </para>
230
231 @greeter: 
232 @Returns: 
233
234
235 <!-- ##### FUNCTION lightdm_greeter_get_autologin_user_hint ##### -->
236 <para>
237
238 </para>
239
240 @greeter: 
241 @Returns: 
242
243
244 <!-- ##### FUNCTION lightdm_greeter_get_autologin_guest_hint ##### -->
245 <para>
246
247 </para>
248
249 @greeter: 
250 @Returns: 
251
252
253 <!-- ##### FUNCTION lightdm_greeter_get_autologin_timeout_hint ##### -->
254 <para>
255
256 </para>
257
258 @greeter: 
259 @Returns: 
260
261
262 <!-- ##### FUNCTION lightdm_greeter_cancel_autologin ##### -->
263 <para>
264
265 </para>
266
267 @greeter: 
268
269
270 <!-- ##### FUNCTION lightdm_greeter_authenticate ##### -->
271 <para>
272
273 </para>
274
275 @greeter: 
276 @username: 
277
278
279 <!-- ##### FUNCTION lightdm_greeter_authenticate_as_guest ##### -->
280 <para>
281
282 </para>
283
284 @greeter: 
285
286
287 <!-- ##### FUNCTION lightdm_greeter_respond ##### -->
288 <para>
289
290 </para>
291
292 @greeter: 
293 @response: 
294
295
296 <!-- ##### FUNCTION lightdm_greeter_cancel_authentication ##### -->
297 <para>
298
299 </para>
300
301 @greeter: 
302
303
304 <!-- ##### FUNCTION lightdm_greeter_get_in_authentication ##### -->
305 <para>
306
307 </para>
308
309 @greeter: 
310 @Returns: 
311
312
313 <!-- ##### FUNCTION lightdm_greeter_get_is_authenticated ##### -->
314 <para>
315
316 </para>
317
318 @greeter: 
319 @Returns: 
320
321
322 <!-- ##### FUNCTION lightdm_greeter_get_authentication_user ##### -->
323 <para>
324
325 </para>
326
327 @greeter: 
328 @Returns: 
329
330
331 <!-- ##### FUNCTION lightdm_greeter_start_session ##### -->
332 <para>
333
334 </para>
335
336 @greeter: 
337 @session: 
338
339
340 <!-- ##### FUNCTION lightdm_greeter_start_default_session ##### -->
341 <para>
342
343 </para>
344
345 @greeter: 
346
347