00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00030 #ifndef _GTK_PROFILE_ENTRY_H_
00031 #define _GTK_PROFILE_ENTRY_H_
00032 
00033 #include <gtk/gtk.h>
00034 #include <glib.h>
00035 #include "commonData.h"
00036 
00037 #define PROFILE_ENTRY_WIDTH                    666
00038 #define PROFILE_ENTRY_HEIGHT                   27
00039 
00040 #define PROFILE_ENTRY_SPACING                  20
00041 
00042 #define PROFILE_ENTRY_NAME_BUTTON_WIDTH        310
00043 #define PROFILE_ENTRY_NAME_BUTTON_HEIGHT       27
00044 
00045 #define PROFILE_ENTRY_SIG_IMG_WIDTH            37 
00046 #define PROFILE_ENTRY_SIG_IMG_HEIGHT           27  
00047 
00048 #define PROFILE_ENTRY_ENCR_IMG_WIDTH           40 
00049 #define PROFILE_ENTRY_ENCR_IMG_HEIGHT          27  
00050 
00051 #define PROFILE_ENTRY_STATUS_WIDTH             (-1)
00052 #define PROFILE_ENTRY_STATUS_HEIGHT            27
00053 
00054 #define PROFILE_ENTRY_EDIT_BUTTON_WIDTH        130
00055 #define PROFILE_ENTRY_EDIT_BUTTON_HEIGHT       27  
00056 
00057 #define GTK_PROFILE_ENTRY_TYPE (gtk_profile_entry_get_type ())
00058 #define GTK_PROFILE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
00059                                 GTK_PROFILE_ENTRY_TYPE, GtkProfileEntry))
00060 #define GTK_PROFILE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), \
00061                                         GTK_PROFILE_ENTRY_TYPE, \
00062                                         GtkProfileEntryClass))
00063 #define IS_GTK_PROFILE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
00064                                    GTK_PROFILE_ENTRY_TYPE))
00065 #define IS_GTK_PROFILE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), \
00066                                            GTK_PROFILE_ENTRY_TYPE))
00067 
00068 typedef struct _GtkProfileEntry       GtkProfileEntry;
00069 typedef struct _GtkProfileEntryClass  GtkProfileEntryClass;
00070 
00071 struct _GtkProfileEntry
00072 {
00073     GtkEventBox   eventbox;      
00074 
00075     
00076     GtkWidget*    clientArea;  
00077     GtkWidget*    nameButton;  
00078     GtkWidget*    sigVbox;     
00079     GtkWidget*    sigImage[5]; 
00080                                
00081     GtkWidget*    encrVbox;      
00082     GtkWidget*    encrImage;     
00083     GtkWidget*    status;        
00084     gboolean      statusFlashing;
00085     GtkWidget*    editButton; 
00086 };
00087 
00088 struct _GtkProfileEntryClass
00089 {
00090     GtkEventBoxClass parent_class;
00091 };
00092 
00093 #ifdef __cplusplus
00094 extern "C" {
00095 #endif 
00096 
00097     
00098     GtkWidget* gtk_profile_entry_new(void);
00099 
00100     
00101     void gtk_profile_entry_display_settings(GtkProfileEntry *profileEntry, 
00102                                         const networkProfile_t *settings, 
00103                                         gchar *status);
00104 
00105     void gtk_profile_entry_set_namebutton_text(GtkProfileEntry *profileEntry, 
00106                                                gchar *nameText);
00107     void gtk_profile_entry_set_signal_image(GtkProfileEntry *profileEntry, 
00108                                             gint quality);
00109     void gtk_profile_entry_set_status(GtkProfileEntry *profileEntry, 
00110                                       gchar *statusText);
00111     void gtk_profile_entry_set_status_flashing(GtkProfileEntry *profileEntry, 
00112                                                gboolean flashing);
00113     void gtk_profile_entry_set_editbutton_text(GtkProfileEntry *profileEntry, 
00114                                                gchar* editText);
00115 
00116     
00117     void gtk_profile_entry_show_encr_image(GtkProfileEntry *profileEntry, 
00118                                            gboolean show);
00119     void gtk_profile_entry_show_edit_button(GtkProfileEntry *profileEntry, 
00120                                             gboolean show);
00121 
00122     
00123     void gtk_profile_entry_set_buttons_active(GtkProfileEntry *profileEntry, 
00124                                               gboolean nameActive, 
00125                                               gboolean editActive);
00126 
00127     GtkWidget* gtk_profile_entry_get_namebutton(GtkProfileEntry *profileEntry);
00128     GtkWidget* gtk_profile_entry_get_editbutton(GtkProfileEntry *profileEntry);
00129 
00130     
00131     GType gtk_profile_entry_get_type (void);
00132 
00133 #ifdef __cplusplus
00134 }
00135 #endif 
00136 
00137 #endif //_GTK_PROFILE_ENTRY_H_
00138