Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
tools
perf
ui
progress.c
Go to the documentation of this file.
1
#include "../cache.h"
2
#include "
progress.h
"
3
#include "
libslang.h
"
4
#include "
ui.h
"
5
#include "
browser.h
"
6
7
void
ui_progress__update
(
u64
curr
,
u64
total,
const
char
*title)
8
{
9
int
bar,
y
;
10
/*
11
* FIXME: We should have a per UI backend way of showing progress,
12
* stdio will just show a percentage as NN%, etc.
13
*/
14
if
(
use_browser
<= 0)
15
return
;
16
17
if
(total == 0)
18
return
;
19
20
ui__refresh_dimensions
(
true
);
21
pthread_mutex_lock(&
ui__lock
);
22
y = SLtt_Screen_Rows / 2 - 2;
23
SLsmg_set_color(0);
24
SLsmg_draw_box(y, 0, 3, SLtt_Screen_Cols);
25
SLsmg_gotorc(y++, 1);
26
SLsmg_write_string((
char
*)title);
27
SLsmg_set_color(
HE_COLORSET_SELECTED
);
28
bar = ((SLtt_Screen_Cols - 2) * curr) / total;
29
SLsmg_fill_region(y, 1, 1, bar,
' '
);
30
SLsmg_refresh();
31
pthread_mutex_unlock(&
ui__lock
);
32
}
Generated on Thu Jan 10 2013 15:09:19 for Linux Kernel by
1.8.2