Página principal | Lista de componentes | Directories | Lista de archivos | Miembros de las clases | Archivos de los miembros | Páginas relacionadas

login.h

Ir a la documentación de este archivo.
00001 /* 
00002  * LabSession - login application and administration tools 
00003  * Copyright (C) 2005 - 2006 - Hugo Ruscitti (see AUTHORS file)
00004  * 
00005  * This program is free software; you can redistribute it and/or modify
00006  * it under the terms of the GNU General Public License as published by
00007  * the Free Software Foundation; either version 2 of the License, or
00008  * (at your option) any later version.
00009  * 
00010  * This program is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013  * GNU General Public License for more details.
00014  * 
00015  * You should have received a copy of the GNU General Public License
00016  * along with this program; if not, write to the Free Software
00017  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
00018  */
00019 
00025 #ifndef _LOGIN_H
00026 #define _LOGIN_H
00027 
00028 #include "util.h"
00029 #include "socket.h"
00030 
00034 struct componentes_form1
00035 {
00036         GtkWidget * ventana;            
00037         GtkWidget * tabla;              
00038         GtkWidget * boton_aceptar;      
00039         GtkWidget * legajo;             
00040         GtkWidget * contrasena;         
00041 };
00042 
00046 struct componentes_form2
00047 {
00048         GtkWidget * ventana;            
00049         GtkWidget * etiqueta;           
00050         GtkWidget * menu;               
00051         GtkWidget * item_renovar;       
00052         int segs;                       
00053         gint id_temporizador;
00054 };
00055 
00059 typedef struct login
00060 {
00061         char run1 [1024];               
00062         char run2 [1024];               
00063         char escritorio [1024];         
00064         char equipo [1024];             
00065         char apagar [1024];             
00066         char reiniciar [1024];          
00068         int puerto;                     
00069         char ip [1024];                 
00071         GTcpSocket * socket;            
00072         GIOChannel * io;                
00074         int pos_x;                      
00075         int pos_y;                      
00077         int wm_login;                   
00078         int wm_reloj;                   
00080         char passwd [1024];             
00082         struct componentes_form1 form1; 
00083         struct componentes_form2 reloj; 
00084 } Login;
00085 
00086 
00087 /* iniciar */
00088 int login_iniciar (Login * data, int argc, char * argv []);
00089 int login_iniciar_identificar (Login * data);
00090 int login_cargar_opciones (Login * data);
00091 int login_conectar_al_servidor (Login * data);
00092 
00093 /* mensajes graficos */
00094 void login_mostrar_error_conexion (Login * data, char * ip, int puerto);
00095 
00096 /* primer ventana (ingreso de nombre/contraseña) */
00097 void login_iniciar_ventana (Login * data);
00098 void login_iniciar_ventana_crear_componentes (Login * data);
00099 void login_iniciar_ventana_conectar (Login * data);
00100 void login_ingresar (GtkWidget * widget, gpointer * _data);
00101 
00102 
00103 /* general */
00104 void login_salida_con_error (Login * data, char * detalle);
00105 void login_signal (int num);
00106 
00107 /* sesion */
00108 int login_ejecutar_gestor (Login * data, int tiempo);
00109 void login_termino_gestor (GPid pid, gint status, gpointer _data);
00110 void login_terminar_sesion (Login * data);
00111 void login_actualizar_sesion (GtkWidget * widget, gpointer  * _data);
00112 void login_solicitar_nueva_sesion (Login * data);
00113 
00114 /* reloj */
00115 void login_crear_reloj (Login * data, int tiempo);
00116 gint login_reloj_actualizar (gpointer _data);
00117 void login_mostrar_menu (GtkWidget * widget, gpointer * _data);
00118 void login_acerca_de (GtkWidget * widget, gpointer  * _data);
00119 
00120 
00121 /* comunicación con el programa servidor */
00122 gboolean login_atender_servidor (GIOChannel* io, GIOCondition cond, \
00123                 gpointer data);
00124 void login_atender_mensaje (Login * data, GIOChannel * io);
00125 void login_atender_logout (Login * data, GIOChannel * io);
00126 void login_atender_reiniciar (Login * data, GIOChannel * io);
00127 void login_atender_apagar (Login * data, GIOChannel * io);
00128 void login_atender_error (Login * data, GIOChannel * io);
00129 void login_atender_actualiza_sesion (Login * data, GIOChannel * io);
00130 void login_atender_sesion (Login * data, GIOChannel * io);
00131 void login_atender_super_sesion (Login * data, GIOChannel * io);
00132 
00133 void login_deshabilitar_renovacion (Login * data);
00134 
00135 #endif




Generado con Doxygen, versión 1.4.2