web/res/metadataplayer/Tooltip.js
author Raphael Velt <raph.velt@gmail.com>
Thu, 03 May 2012 17:52:07 +0200
changeset 598 d366aa22bd79
child 648 b28afee5470b
permissions -rw-r--r--
New Metadataplayer version
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
598
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     1
/* this widget displays a small tooltip */
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     2
IriSP.Widgets.Tooltip = function(Popcorn, config, Serializer) {
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     3
    IriSP.Widgets.Widget.call(this, Popcorn, config, Serializer);
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     4
};
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     5
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     6
IriSP.Widgets.Tooltip.prototype = new IriSP.Widgets.Widget();
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     7
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     8
IriSP.Widgets.Tooltip.prototype.template = '<div class="Ldt-Tooltip"><div class="Ldt-Tooltip-Color"></div><div class="Ldt-Tooltip-Text"></div></div>';
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
     9
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    10
IriSP.Widgets.Tooltip.prototype.draw = function() {
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    11
    _this = this;
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    12
    this.$.html(this.template);
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    13
    this.$.parent().css({
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    14
        "position" : "relative"
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    15
    });
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    16
    this.$tip = this.$.find(".Ldt-Tooltip");
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    17
    this.$.mouseover(function() {
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    18
        _this.$tip.hide();
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    19
    });
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    20
    this.hide();
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    21
};
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    22
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    23
IriSP.Widgets.Tooltip.prototype.show = function(x, y, text, color) {
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    24
    
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    25
    if (typeof color !== "undefined") {
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    26
        this.$.find(".Ldt-Tooltip-Color").show().css("background-color", color);
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    27
    } else {
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    28
        this.$.find(".Ldt-Tooltip-Color").hide();
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    29
    }
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    30
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    31
    this.$.find(".Ldt-Tooltip-Text").html(text);
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    32
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    33
    this.$tip.show();
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    34
    this.$tip.css({
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    35
        "left" : Math.floor(x - this.$tip.outerWidth() / 2) + "px",
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    36
        "top" : Math.floor(y - this.$tip.outerHeight()) + "px"
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    37
    });
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    38
};
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    39
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    40
IriSP.Widgets.Tooltip.prototype.hide = function() {
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    41
    this.$tip.hide();
d366aa22bd79 New Metadataplayer version
Raphael Velt <raph.velt@gmail.com>
parents:
diff changeset
    42
};