Browse code

Add "modalMessage" to display messages from javascript side

Natasha Kerensikova authored on11/03/2016 21:34:56
Showing3 changed files
... ...
@@ -11,6 +11,7 @@
11 11
   },
12 12
   "appKeys": {
13 13
     "lastSent": 110,
14
+    "modalMessage": 120,
14 15
     "dataKey": 210,
15 16
     "dataLine": 220
16 17
   },
... ...
@@ -16,7 +16,7 @@
16 16
 
17 17
 Pebble.addEventListener("ready", function() {
18 18
    console.log("Health Export PebbleKit JS ready!");
19
-   Pebble.sendAppMessage({ "lastSent": 0 });
19
+   Pebble.sendAppMessage({ "lastSent": 0, "modalMessage": "Not configured" });
20 20
 });
21 21
 
22 22
 Pebble.addEventListener("appmessage", function(e) {
... ...
@@ -2,6 +2,7 @@
2 2
 #include <pebble.h>
3 3
 
4 4
 #define MSG_KEY_LAST_SENT	110
5
+#define MSG_KEY_MODAL_MESSAGE	120
5 6
 #define MSG_KEY_DATA_KEY	210
6 7
 #define MSG_KEY_DATA_LINE	220
7 8
 
... ...
@@ -21,6 +22,8 @@ window_load(Window *window) {
21 22
 	text_layer = text_layer_create((GRect) { .origin = { 0, bounds.size.h / 3 }, .size = { bounds.size.w, bounds.size.h / 3 } });
22 23
 	text_layer_set_text(text_layer, buffer);
23 24
 	text_layer_set_text_alignment(text_layer, GTextAlignmentCenter);
25
+	text_layer_set_font(text_layer,
26
+	    fonts_get_system_font(FONT_KEY_GOTHIC_24_BOLD));
24 27
 	layer_add_child(window_layer, text_layer_get_layer(text_layer));
25 28
 }
26 29
 
... ...
@@ -29,6 +32,14 @@ window_unload(Window *window) {
29 32
 	text_layer_destroy(text_layer);
30 33
 }
31 34
 
35
+static void
36
+set_modal_message(const char *msg) {
37
+	GRect content_size;
38
+	strncpy(buffer, msg, sizeof buffer);
39
+	buffer[sizeof buffer - 1] = 0;
40
+	layer_mark_dirty(text_layer_get_layer(text_layer));
41
+}
42
+
32 43
 /* minute_data_image - fill a buffer with CSV data without line terminator */
33 44
 /*    format: RFC-3339 time, step count, yaw, pitch, vmc, ambient light */
34 45
 static uint16_t
... ...
@@ -211,6 +222,17 @@ inbox_received_handler(DictionaryIterator *iterator, void *context) {
211 222
 
212 223
 	tuple = dict_find(iterator, MSG_KEY_LAST_SENT);
213 224
 	if (tuple) handle_last_sent (tuple);
225
+
226
+	tuple = dict_find(iterator, MSG_KEY_MODAL_MESSAGE);
227
+	if (tuple) {
228
+		if (tuple->type != TUPLE_CSTRING) {
229
+			APP_LOG(APP_LOG_LEVEL_ERROR,
230
+			    "Unexpected type %d for MSG_KEY_MODAL_MESSAGE",
231
+			    (int)tuple->type);
232
+		} else {
233
+			set_modal_message(tuple->value->cstring);
234
+		}
235
+	}
214 236
 }
215 237
 
216 238
 static time_t