From: Jason Etheridge Date: Mon, 4 Apr 2011 03:52:52 +0000 (-0400) Subject: add tooltips and click-handlers to statusbar panels X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=2f7f542b28a583f63642580e862d32cf38f25bf3;p=evergreen%2Fequinox.git add tooltips and click-handlers to statusbar panels --- diff --git a/Open-ILS/xul/staff_client/chrome/content/main/menu.js b/Open-ILS/xul/staff_client/chrome/content/main/menu.js index 6800f8eda1..5462d841f4 100644 --- a/Open-ILS/xul/staff_client/chrome/content/main/menu.js +++ b/Open-ILS/xul/staff_client/chrome/content/main/menu.js @@ -1708,9 +1708,26 @@ main.menu.prototype = { content_params.url_prefix = function(url) { return obj.url_prefix(url); }; content_params.network_meter = obj.network_meter; content_params.page_meter = obj.page_meter; - content_params.set_statusbar = function(slot,text) { + content_params.set_statusbar = function(slot,text,tooltiptext,click_handler) { var e = document.getElementById('statusbarpanel'+slot); - if (e) { e.setAttribute('label',text); } + if (e) { + var p = e.parentNode; + var sbp = document.createElement('statusbarpanel'); + sbp.setAttribute('id','statusbarpanel'+slot); + p.replaceChild(sbp,e); // destroy and replace the statusbarpanel as a poor man's way of clearing event handlers + + sbp.setAttribute('label',text); + if (tooltiptext) { + sbp.setAttribute('tooltiptext',tooltiptext); + } + if (click_handler) { + sbp.addEventListener( + 'click', + click_handler, + false + ); + } + } }; content_params.chrome_xulG = xulG; content_params._data = xulG._data;