GUI -- Added "devices" scenario to display all device types.
 - added "query" glyph.
 - added glyphDefined() predicate to glyph service.
 - made sure query glyph is displayed if a device type for which there is no corresponding glyph is encountered.

Change-Id: Id5339ad3b666b885e096ced57760c5f84d8bcfc2
diff --git a/web/gui/src/main/webapp/app/fw/svg/glyph.js b/web/gui/src/main/webapp/app/fw/svg/glyph.js
index c6d5338..28f262a 100644
--- a/web/gui/src/main/webapp/app/fw/svg/glyph.js
+++ b/web/gui/src/main/webapp/app/fw/svg/glyph.js
@@ -55,6 +55,15 @@
             unknown: "M35,40a5,5,0,0,1,5-5h30a5,5,0,0,1,5,5v30a5,5,0,0,1-5,5" +
             "h-30a5,5,0,0,1-5-5z",
 
+            query: "M51.4,69.9c0-0.9,0-1.6,0-2.1c0-2.7,0.4-5.1,1.2-7.1" +
+            "c0.6-1.5,1.5-3,2.8-4.5c0.9-1.1,2.6-2.7,5.1-4.8c2.4-2.1,4-3.8," +
+            "4.8-5.1 c0.7-1.3,1.1-2.6,1.1-4.1c0-2.7-1.1-5.1-3.2-7.1c-2.1-2" +
+            "-4.8-3.1-7.9-3.1c-3,0-5.5,0.9-7.5,2.8c-2,1.9-3.3,4.8-4,8.7l-7.2" +
+            "-0.8 c0.7-5.3,2.6-9.3,5.8-12.1c3.2-2.8,7.5-4.2,12.8-4.2c5.6,0," +
+            "10.1,1.5,13.4,4.5c3.3,3,5,6.7,5,10.9c0,2.5-0.6,4.8-1.8,6.8 " +
+            "s-3.5,4.6-6.9,7.6c-2.3,2-3.8,3.5-4.5,4.4c-0.7,1-1.2,2-1.6,3.3" +
+            "c-0.3,1.2-0.5,3.2-0.6,6H51.4z M51,83.8v-7.9h8v7.9H51z",
+
             node: "M15,100a5,5,0,0,1-5-5v-65a5,5,0,0,1,5-5h80a5,5,0,0,1,5,5" +
             "v65a5,5,0,0,1-5,5zM14,22.5l11-11a10,3,0,0,1,10-2h40a10,3,0,0,1," +
             "10,2l11,11zM16,35a5,5,0,0,1,10,0a5,5,0,0,1-10,0z",
@@ -586,6 +595,10 @@
         return glyphs.get(id);
     }
 
+    function glyphDefined(id) {
+        return glyphs.has(id);
+    }
+
     // Note: defs should be a D3 selection of a single <defs> element
     function loadDefs(defs, glyphIds, noClear) {
         var list = fs.isA(glyphIds) || ids(),
@@ -649,6 +662,7 @@
                 registerGlyphSet: registerGlyphSet,
                 ids: ids,
                 glyph: glyph,
+                glyphDefined: glyphDefined,
                 loadDefs: loadDefs,
                 addGlyph: addGlyph
             };