#include <gdk/gdkx.h>#include "liberdm/erdm.h"#include "browserTypes.h"#include "timingInfo.h"#include "displayUpdate.h"#include "browserLog.h"#include "erbusy.h"Go to the source code of this file.
Functions | |
| int | display_update_get_level (void) |
| int | display_update_reset_level (void) |
| gboolean | display_update_during_idle_handling (gpointer data) |
| gboolean | display_update_request_screen_refresh (int level, gpointer data) |
| void | display_update_increase_level (int level) |
Variables | |
| static int | g_currentLevel = LOWEST_LEVEL |
| gboolean display_update_during_idle_handling | ( | gpointer | data | ) |
callback : called when GTK in idle mode
| data | - indicates where the update request came from (DEBUG reasons) |
Definition at line 53 of file displayUpdate.cpp.
00054 { 00055 int q = (int) data; 00056 eDmQuality quality = dmQFull; 00057 00058 if (q == DM_QUALITY_TYPING) 00059 { 00060 quality = dmQTyping; 00061 } 00062 00063 BR_DISPLAYPRINTF("request screen update (%d)", quality); 00064 00065 #ifdef TIMING_INFORMATION_ENABLED 00066 timing_display_time_elapsed(); 00067 #endif //TIMING_INFORMATION_ENABLED 00068 00069 // full screen update, 00070 gdk_threads_enter(); 00071 gdk_flush(); 00072 gdk_flush(); 00073 gdk_threads_leave(); 00074 00075 //not busy any more 00076 erbusy_off(); 00077 00078 #ifdef TIMING_INFORMATION_ENABLED 00079 timing_display_time_elapsed(); 00080 #endif //TIMING_INFORMATION_ENABLED 00081 00082 // full screen update, 00083 dmDisplay(dmCmdPriorUrgent, quality); 00084 00085 // return FALSE to remove handler 00086 return FALSE; 00087 }

| int display_update_get_level | ( | void | ) |
| void display_update_increase_level | ( | int | level | ) |
Increase the level value of the screen refresh. Meaning that the screen refresh will only be requested to the displayManager for levels equal or larger then this level value.
| level | screen refresh level |
Definition at line 123 of file displayUpdate.cpp.
00124 { 00125 if (level > g_currentLevel) 00126 { 00127 g_currentLevel = level; 00128 } 00129 }
| gboolean display_update_request_screen_refresh | ( | int | level, | |
| gpointer | data | |||
| ) |
set address of gtk idle callback, where the e-inkt display update is requested
| status | indicates whether or not not used | |
| data | not used |
Definition at line 89 of file displayUpdate.cpp.
00090 { 00091 int theCurrentLevel = display_update_get_level(); 00092 int quality = (int) data; 00093 00094 if (quality == 0) 00095 { 00096 quality = DM_QUALITY_FULL; 00097 } 00098 00099 BR_DISPLAYPRINTF("entry level %d currentlevel %d", level, theCurrentLevel); 00100 00101 if (level >= theCurrentLevel) 00102 { 00103 00104 gtk_idle_add(display_update_during_idle_handling, (gpointer) quality); 00105 00106 //reset the current level 00107 display_update_reset_level(); 00108 00109 } 00110 return TRUE; 00111 }

| int display_update_reset_level | ( | void | ) |
Definition at line 118 of file displayUpdate.cpp.
00119 { 00120 g_currentLevel = LOWEST_LEVEL; 00121 }
int g_currentLevel = LOWEST_LEVEL [static] |
Definition at line 40 of file displayUpdate.cpp.
1.5.6