+/**
+ * Affiche un info bulle lorsque le curseur survole l'élément donné.
+ * FIXME : le width de element ne tient pas compte du padding !?
+ */
+Util.prototype.infoBulle = function(message, element)
+{
+ var thisUtil = this
+
+ var cacherBulle = function()
+ {
+ $("#flecheBulle").hide()
+ $("#messageBulle").hide()
+ }
+
+ element.hover(
+ function(e)
+ {
+ if (!thisUtil.bulleActive)
+ return
+
+ var m = $("#messageBulle")
+ var f = $("#flecheBulle")
+
+ $("p", m).html(message)
+
+ var positionFleche = {
+ left : element.offset().left + element.width() / 2 - f.width() / 2,
+ top : element.offset().top - f.height()
+ }
+ var positionMessage = {
+ left : element.offset().left + element.width() / 2 - m.width() / 2,
+ top : element.offset().top - f.height() - m.height()
+ }
+ var depassementDroit = (positionMessage.left + m.width()) - $("body").width()
+ if (depassementDroit > 0)
+ positionMessage.left -= depassementDroit
+ else
+ {
+ if (positionMessage.left < 0)
+ positionMessage.left = 0
+ }
+
+ m.css("top", positionMessage.top).css("left", positionMessage.left).show()
+ f.css("top", positionFleche.top).css("left", positionFleche.left).show()
+ },
+ cacherBulle
+ ).click(cacherBulle)
+}
+