GUI -- TopoView - Reimplemented (most of) the ESCAPE key handling.
Change-Id: I4d05a3107e68e75aad47adb6c4ef6a7ca74ba82b
Showing
5 changed files
with
31 additions
and
26 deletions
| ... | @@ -119,19 +119,14 @@ | ... | @@ -119,19 +119,14 @@ |
| 119 | return true; | 119 | return true; |
| 120 | } | 120 | } |
| 121 | 121 | ||
| 122 | + // returns true if we 'consumed' the ESC keypress, false otherwise | ||
| 122 | function escapeKey(view, key, code, ev) { | 123 | function escapeKey(view, key, code, ev) { |
| 123 | - // TODO: plumb in handling of alerts and quick help dismissal | 124 | + // TODO: plumb in handling of quick help dismissal |
| 124 | - // We will delegate to the Alert / QuickHelp Services as appropriate. | ||
| 125 | /* | 125 | /* |
| 126 | - if (alerts.open) { | 126 | + if (qh.hide()) { |
| 127 | - closeAlerts(); | ||
| 128 | - return true; | ||
| 129 | - } | ||
| 130 | - if (libApi.quickHelp.hide()) { | ||
| 131 | return true; | 127 | return true; |
| 132 | } | 128 | } |
| 133 | */ | 129 | */ |
| 134 | - console.log('ESCAPE'); | ||
| 135 | return false; | 130 | return false; |
| 136 | } | 131 | } |
| 137 | 132 | ... | ... |
| ... | @@ -99,16 +99,26 @@ | ... | @@ -99,16 +99,26 @@ |
| 99 | } | 99 | } |
| 100 | 100 | ||
| 101 | function handleEscape() { | 101 | function handleEscape() { |
| 102 | - $log.debug("TODO: handle-ESCAPE..."); | 102 | + if (false) { |
| 103 | - // if showingAffinity: cancelAffinity | 103 | + // TODO: if an instance is selected, cancel the affinity mapping |
| 104 | - | 104 | + // tis.cancelAffinity() |
| 105 | - // else if showingDetails: deselectAll | 105 | + |
| 106 | - | 106 | + } else if (tss.haveDetails()) { |
| 107 | - // else if oiBox visible: hide oiBox | 107 | + // else if we have node selections, deselect them all |
| 108 | - | 108 | + tss.deselectAll(); |
| 109 | - // else if summary panel visible: cancel Summary | 109 | + |
| 110 | - | 110 | + } else if (tis.isVisible()) { |
| 111 | - // else: hoverMode = hoverModeNone | 111 | + // else if the Instance Panel is visible, hide it |
| 112 | + tis.hide(); | ||
| 113 | + tfs.updateDeviceColors(); | ||
| 114 | + | ||
| 115 | + } else if (tps.summaryVisible()) { | ||
| 116 | + // else if the Summary Panel is visible, hide it | ||
| 117 | + tps.hideSummaryPanel(); | ||
| 118 | + | ||
| 119 | + } else { | ||
| 120 | + // TODO: set hover mode to hoverModeNone | ||
| 121 | + } | ||
| 112 | } | 122 | } |
| 113 | 123 | ||
| 114 | // --- Glyphs, Icons, and the like ----------------------------------- | 124 | // --- Glyphs, Icons, and the like ----------------------------------- | ... | ... |
| ... | @@ -144,10 +144,11 @@ | ... | @@ -144,10 +144,11 @@ |
| 144 | 144 | ||
| 145 | function toggleSummary() { | 145 | function toggleSummary() { |
| 146 | if (summaryPanel.isVisible()) { | 146 | if (summaryPanel.isVisible()) { |
| 147 | - api.sendEvent("cancelSummary"); | ||
| 148 | hideSummaryPanel(); | 147 | hideSummaryPanel(); |
| 149 | } else { | 148 | } else { |
| 149 | + // ask server to start sending summary data. | ||
| 150 | api.sendEvent('requestSummary'); | 150 | api.sendEvent('requestSummary'); |
| 151 | + // note: the summary panel will appear, once data arrives | ||
| 151 | } | 152 | } |
| 152 | } | 153 | } |
| 153 | 154 | ||
| ... | @@ -163,11 +164,9 @@ | ... | @@ -163,11 +164,9 @@ |
| 163 | } | 164 | } |
| 164 | 165 | ||
| 165 | function hideSummaryPanel() { | 166 | function hideSummaryPanel() { |
| 166 | - summaryPanel.hide(function () { | 167 | + // instruct server to stop sending summary data |
| 167 | - if (detailPanel.isVisible()) { | 168 | + api.sendEvent("cancelSummary"); |
| 168 | - detailPanel.up(); | 169 | + summaryPanel.hide(detailPanel.up); |
| 169 | - } | ||
| 170 | - }); | ||
| 171 | } | 170 | } |
| 172 | 171 | ||
| 173 | function showDetailPanel() { | 172 | function showDetailPanel() { | ... | ... |
| ... | @@ -302,7 +302,8 @@ | ... | @@ -302,7 +302,8 @@ |
| 302 | selectObject: selectObject, | 302 | selectObject: selectObject, |
| 303 | deselectObject: deselectObject, | 303 | deselectObject: deselectObject, |
| 304 | deselectAll: deselectAll, | 304 | deselectAll: deselectAll, |
| 305 | - hovered: function () { return hovered; } | 305 | + hovered: function () { return hovered; }, |
| 306 | + haveDetails: function () { return haveDetails; } | ||
| 306 | }; | 307 | }; |
| 307 | }]); | 308 | }]); |
| 308 | }()); | 309 | }()); | ... | ... |
| ... | @@ -36,7 +36,7 @@ describe('factory: view/topo/topoSelect.js', function() { | ... | @@ -36,7 +36,7 @@ describe('factory: view/topo/topoSelect.js', function() { |
| 36 | expect(fs.areFunctions(tss, [ | 36 | expect(fs.areFunctions(tss, [ |
| 37 | 'initSelect', 'destroySelect', 'showDetails', 'toggleDetails', | 37 | 'initSelect', 'destroySelect', 'showDetails', 'toggleDetails', |
| 38 | 'nodeMouseOver', 'nodeMouseOut', 'selectObject', 'deselectObject', | 38 | 'nodeMouseOver', 'nodeMouseOut', 'selectObject', 'deselectObject', |
| 39 | - 'deselectAll', 'hovered' | 39 | + 'deselectAll', 'hovered', 'haveDetails' |
| 40 | ])).toBeTruthy(); | 40 | ])).toBeTruthy(); |
| 41 | }); | 41 | }); |
| 42 | 42 | ... | ... |
-
Please register or login to post a comment