Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
F
fwatch
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
8
Issues
8
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
fwatch
Commits
c87d837e
Commit
c87d837e
authored
Aug 28, 2014
by
Theodor-Adrian Stana
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add GPS icon to status bar
parent
6865ed43
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
22 additions
and
27 deletions
+22
-27
gpscoord.c
sw/freertos/src/apps/gpscoord.c
+4
-26
status_bar.c
sw/freertos/src/apps/widgets/status_bar.c
+18
-1
No files found.
sw/freertos/src/apps/gpscoord.c
View file @
c87d837e
...
...
@@ -36,11 +36,6 @@
#include "application.h"
static
struct
rle_bitmap
gps_ico
;
static
int
gps_ico_blink
=
0
;
static
int
asdf
=
0
;
static
void
gps_redraw
(
struct
ui_widget
*
w
)
{
char
buf
[
16
];
...
...
@@ -48,8 +43,6 @@ static void gps_redraw(struct ui_widget *w)
gps_get_utc
(
&
utc
);
asdf
++
;
gfx_clear
(
&
w
->
dc
,
0
);
sprintf
(
buf
,
"%d:%d:%d"
,
utc
.
hr
,
utc
.
min
,
...
...
@@ -59,17 +52,8 @@ static void gps_redraw(struct ui_widget *w)
static
void
gps_event
(
struct
ui_widget
*
w
,
const
struct
event
*
evt
)
{
if
(
evt
->
type
==
GPS_FIX_LOST
)
{
gps_ico_blink
^=
1
;
if
(
gps_ico_blink
)
memcpy
(
&
gps_ico
,
&
gps_searching
,
sizeof
(
struct
rle_bitmap
));
else
memcpy
(
&
gps_ico
,
0
,
sizeof
(
struct
rle_bitmap
));
}
else
if
(
evt
->
type
==
GPS_FIX_ACQ
)
{
memcpy
(
&
gps_ico
,
&
gps_receiving
,
sizeof
(
struct
rle_bitmap
));
}
w
->
flags
|=
WF_DIRTY
;
if
(
evt
->
type
==
RTC_TICK
)
w
->
flags
|=
WF_DIRTY
;
}
static
struct
ui_widget
gps_coord_display
=
{
...
...
@@ -116,17 +100,11 @@ void gpscoord_main(void *params)
return
;
break
;
case
RTC_TICK
:
if
(
gps_fixed
())
evt
.
type
=
GPS_FIX_ACQ
;
else
evt
.
type
=
GPS_FIX_LOST
;
ui_update
(
&
evt
);
}
}
//if (gps_fixed()) {
// evt.type = GPS_FIX_ACQ;
// ui_update(&evt);
//} else {
// evt.type = GPS_FIX_LOST;
// ui_update(&evt);
//}
}
}
...
...
sw/freertos/src/apps/widgets/status_bar.c
View file @
c87d837e
...
...
@@ -27,15 +27,32 @@
#include "status_bar.h"
#include <string.h>
static
struct
rle_bitmap
gps_ico
;
static
int
gps_ico_blink
=
0
;
static
void
status_bar_event
(
struct
ui_widget
*
w
,
const
struct
event
*
evt
)
{
// TODO update info about GPS signal, time, etc.
if
(
evt
->
type
==
GPS_FIX_LOST
)
{
w
->
flags
|=
WF_DIRTY
;
gps_ico_blink
^=
1
;
if
(
gps_ico_blink
)
memcpy
(
&
gps_ico
,
&
gps_searching
,
sizeof
(
struct
rle_bitmap
));
else
memcpy
(
&
gps_ico
,
0
,
sizeof
(
struct
rle_bitmap
));
}
else
if
(
evt
->
type
==
GPS_FIX_ACQ
)
{
w
->
flags
|=
WF_DIRTY
;
memcpy
(
&
gps_ico
,
&
gps_receiving
,
sizeof
(
struct
rle_bitmap
));
}
}
static
void
status_bar_redraw
(
struct
ui_widget
*
w
)
{
gfx_round_box
(
&
w
->
dc
,
30
,
-
10
,
127
-
30
,
10
,
9
,
COLOR_BLACK
);
gfx_centered_text
(
&
w
->
dc
,
&
font_helv11
,
0
,
"Home"
,
1
);
gfx_draw_bitmap
(
&
w
->
dc
,
0
,
0
,
&
gps_ico
);
}
struct
ui_widget
status_bar
=
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment