settings/src/iLiadConfigData.h File Reference

setup application - E-reader config screen data handling More...

#include <liberregxml/erregapi.h>

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void iLiad_config_data_init (void)
void iLiad_config_data_destroy (void)
void iLiad_config_data_display (void)
gboolean iLiad_config_data_change_flipbar_direction ()
char * iLiad_config_data_get_language (void)
void on_keys_selection_update (erGtkSelectionGroup *selection, gpointer button, gpointer data)
void on_language_selection_update (erGtkSelectionGroup *selection, gpointer button, gpointer data)
void on_sound_selection_update (erGtkSelectionGroup *selection, gpointer button, gpointer data)
void on_keybuffering_selection_update (erGtkSelectionGroup *selection, gpointer button, gpointer data)
void on_flipbar_direction_selection_update (erGtkSelectionGroup *selection, gpointer button, gpointer data)
void iLiad_config_data_store (void)


Detailed Description

setup application - E-reader config screen data handling

Copyright (C) 2005-2008 iRex Technologies B.V. All rights reserved.

<File description>="">

Definition in file iLiadConfigData.h.


Function Documentation

gboolean iLiad_config_data_change_flipbar_direction (  ) 

Definition at line 188 of file iLiadConfigData.c.

00189 {
00190     gboolean ret = FALSE;
00191     
00192     if (g_init_settings && g_user_settings)
00193     {
00194         if (g_init_settings->flipbarLeftIsDown 
00195               == g_user_settings->flipbarLeftIsDown)
00196             ret = FALSE;
00197         else
00198             ret = TRUE;
00199     }
00200     
00201     return ret;
00202 }

void iLiad_config_data_destroy ( void   ) 

Definition at line 112 of file iLiadConfigData.c.

00113 {
00114     ST_LOGPRINTF("entry");
00115 
00116     if (g_user_settings)
00117     {
00118         erRegFreeUserSetting(g_user_settings);
00119         g_user_settings = NULL;
00120     }
00121 
00122     if (g_stored_settings)
00123     {
00124         erRegFreeUserSetting(g_stored_settings);
00125         g_stored_settings = NULL;
00126     }
00127 
00128     if (g_init_settings)
00129     {
00130         erRegFreeUserSetting(g_init_settings);
00131         g_init_settings = NULL;
00132     }
00133 }

Here is the call graph for this function:

void iLiad_config_data_display ( void   ) 

Definition at line 135 of file iLiadConfigData.c.

00136 {
00137     ST_LOGPRINTF("entry");
00138 
00139     g_return_if_fail(NULL != g_user_settings);
00140     g_assert(NULL != g_user_settings);
00141 
00142     //language
00143     if (g_user_settings->language)
00144     {
00145         iLiad_config_set_language(g_user_settings->language);
00146     }
00147     else
00148     {
00149         iLiad_config_set_language(DEFAULT_LOCALE);
00150     }
00151 
00152     //timeout value
00153     iLiad_config_set_keys(g_user_settings->longkeypressTimeout);
00154 
00155     // volume
00156     //iLiad_config_set_volume(g_user_settings->volume);
00157     if(g_user_settings->volume == 0)    
00158     {
00159         iLiad_config_set_volume(0);
00160     }
00161     else
00162     {
00163         iLiad_config_set_volume(1);
00164     }   
00165     
00166     // keybuffering value
00167     if(g_user_settings->keyBuffering == 0)    
00168     {
00169         iLiad_config_set_keybuffering(0);
00170     }   
00171     else
00172     {
00173         iLiad_config_set_keybuffering(1);
00174     }
00175     
00176     // flipbarLeftIsDown value
00177     if(g_user_settings->flipbarLeftIsDown == TRUE)    
00178     {
00179         iLiad_config_set_flipbar_direction(TRUE);
00180     }
00181     else
00182     {
00183         iLiad_config_set_flipbar_direction(FALSE);
00184     }
00185     display_update_request_screen_refresh(SETTING_ITEM_CHANGE, WAVEFORM_FULLSCREEN);
00186 }

Here is the call graph for this function:

char* iLiad_config_data_get_language ( void   ) 

Definition at line 311 of file iLiadConfigData.c.

00312 {
00313     g_return_val_if_fail(NULL != g_user_settings, NULL);
00314     g_return_val_if_fail(NULL != g_user_settings->language, NULL);
00315 
00316     return g_user_settings->language;
00317 }

void iLiad_config_data_init ( void   ) 

Definition at line 84 of file iLiadConfigData.c.

00085 {
00086     ST_LOGPRINTF("entry");
00087 
00088     iLiad_config_data_destroy();
00089 
00090     g_user_settings = erRegGetUserSetting();
00091 
00092     if (g_user_settings == NULL)
00093     {
00094         ST_WARNPRINTF("use default values");
00095         // default values from the er_registry.txt
00096         g_user_settings = g_new0(regUserSetting_t, 1);
00097         g_user_settings->language = strdup(DEFAULT_LOCALE);
00098         g_user_settings->volume = 75;
00099         g_user_settings->keyBuffering = 0;
00100         g_user_settings->longkeypressTimeout = 500;
00101         g_user_settings->flipbarLeftIsDown = TRUE;
00102     }
00103     else
00104     {
00105         g_stored_settings = user_setting_dup(g_user_settings);
00106     }
00107     g_init_settings = user_setting_dup(g_user_settings);
00108 
00109     erIpcStartClient(ER_CONTENTLISTER_CHANNEL, &contentListerChannel);
00110 }

Here is the call graph for this function:

void iLiad_config_data_store ( void   ) 

Definition at line 320 of file iLiadConfigData.c.

00321 {
00322     ST_LOGPRINTF("entry");
00323 
00324     g_return_if_fail(NULL != g_user_settings);
00325     g_assert(NULL != g_user_settings);
00326 
00327     if (   g_stored_settings != NULL
00328         && strcmp(g_user_settings->language, g_stored_settings->language) == 0
00329         && g_user_settings->volume              == g_stored_settings->volume
00330         && g_user_settings->keyBuffering        == g_stored_settings->keyBuffering
00331         && g_user_settings->longkeypressTimeout == g_stored_settings->longkeypressTimeout 
00332         && g_user_settings->flipbarLeftIsDown   == g_stored_settings->flipbarLeftIsDown)
00333     {
00334         // Nothing changed, nothing to save
00335         return;
00336     }
00337 
00338     prepare_registry_write();
00339 
00340     ST_STOREPRINTF("calling erRegSetUserSetting");
00341     erRegSetUserSetting(g_user_settings);
00342 
00343     g_stored_settings = user_setting_dup(g_user_settings);
00344 
00345     do_registry_write();
00346 }

Here is the call graph for this function:

void on_flipbar_direction_selection_update ( erGtkSelectionGroup selection,
gpointer  button,
gpointer  data 
)

Definition at line 238 of file iLiadConfigData.c.

00239 {
00240     ST_LOGPRINTF("entry");
00241 
00242     g_return_if_fail(NULL != g_user_settings);
00243     g_assert(NULL != g_user_settings);
00244 
00245     g_user_settings->flipbarLeftIsDown = iLiad_config_get_flipbar_direction();
00246 
00247     ST_LOGPRINTF("flipbarLeftIsDown %s", g_user_settings->flipbarLeftIsDown == TRUE ? "LEFT" : "RIGHT");
00248 
00249     display_update_request_screen_refresh(SETTING_ITEM_CHANGE, WAVEFORM_TYPING);
00250 }

Here is the call graph for this function:

void on_keybuffering_selection_update ( erGtkSelectionGroup selection,
gpointer  button,
gpointer  data 
)

Definition at line 218 of file iLiadConfigData.c.

00219 {
00220     ST_LOGPRINTF("entry");
00221 
00222     g_return_if_fail(NULL != g_user_settings);
00223     g_assert(NULL != g_user_settings);
00224 
00225     g_user_settings->keyBuffering = iLiad_config_get_keybuffering();
00226 
00227     // TODO: Fix when user can input the number of keys if enbale keybuffering    
00228     if (g_user_settings->keyBuffering != 0)
00229     {
00230         g_user_settings->keyBuffering = 12;
00231     }
00232 
00233     ST_LOGPRINTF("KeyBuffering %s", g_user_settings->keyBuffering == 0 ? "OFF" : "ON");
00234 
00235     display_update_request_screen_refresh(SETTING_ITEM_CHANGE, WAVEFORM_TYPING);
00236 }

Here is the call graph for this function:

void on_keys_selection_update ( erGtkSelectionGroup selection,
gpointer  button,
gpointer  data 
)

Definition at line 204 of file iLiadConfigData.c.

00205 {
00206     ST_LOGPRINTF("entry");
00207 
00208     g_return_if_fail(NULL != g_user_settings);
00209     g_assert(NULL != g_user_settings);
00210 
00211     g_user_settings->longkeypressTimeout = iLiad_config_get_keys();
00212 
00213     ST_LOGPRINTF("longkeypressTimeout = %d", g_user_settings->longkeypressTimeout);
00214 
00215     display_update_request_screen_refresh(SETTING_ITEM_CHANGE, WAVEFORM_TYPING);
00216 }

Here is the call graph for this function:

void on_language_selection_update ( erGtkSelectionGroup selection,
gpointer  button,
gpointer  data 
)

Definition at line 252 of file iLiadConfigData.c.

00253 {
00254     g_assert(NULL != g_user_settings);
00255     g_assert(NULL != g_user_settings->language);
00256 
00257     ST_LOGPRINTF("entry");
00258 
00259     const gchar *theLanguage = iLiad_config_get_language();
00260 
00261     if ( strcmp(theLanguage, g_user_settings->language) != 0 )
00262     {
00263         erbusy_blink();
00264 
00265         g_free(g_user_settings->language);
00266         g_user_settings->language = strdup(theLanguage);
00267         ST_LANGUAGEPRINTF("language [%s]", g_user_settings->language);
00268 
00269         // update languages 
00270         languagesInit();
00271         bg_set_text();
00272         iLiad_startup_screen_set_text();
00273         iLiad_config_set_text();
00274         iLiad_archive_location_set_text();
00275         iLiad_user_set_text();
00276         iLiad_pincode_set_text();
00277         iLiad_pc_connect_screen_set_text();
00278         iLiad_autoconnect_set_text();
00279         iLiad_timedids_screen_set_text();
00280         iLiad_date_time_set_text();
00281         iLiad_device_overview_set_text();
00282 
00283         display_update_request_screen_refresh(SETTING_ITEM_CHANGE, WAVEFORM_FULLSCREEN);
00284     }
00285 
00286     ST_LOGPRINTF("done");
00287 }

void on_sound_selection_update ( erGtkSelectionGroup selection,
gpointer  button,
gpointer  data 
)

Definition at line 289 of file iLiadConfigData.c.

00290 {
00291     ST_LOGPRINTF("entry");
00292 
00293     g_return_if_fail(NULL != g_user_settings);
00294     g_assert(NULL != g_user_settings);
00295 
00296     g_user_settings->volume = iLiad_config_get_volume();
00297 
00298     // TODO: Fix when selection becomes a slider     
00299     if (g_user_settings->volume != 0)
00300     {
00301         g_user_settings->volume = 75;
00302     }
00303 
00304     ST_LOGPRINTF("sound %s", g_user_settings->volume == 0 ? "OFF" : "ON");
00305 
00306     display_update_request_screen_refresh(SETTING_ITEM_CHANGE, WAVEFORM_TYPING);
00307 
00308     clEnableAudio(contentListerChannel, g_user_settings->volume);
00309 }

Here is the call graph for this function:


Generated on Sun Dec 14 17:17:06 2008 by  doxygen 1.5.6