
/* hint box appear/fading */

var hintBoxEffect = null;
var hintBoxEffectLastWasFade = true;
var hintBoxNewText = "";

function showHintBox(text) 
{
    if (hintBoxEffect != null) 
    {
        hintBoxEffect.cancel();
        if (hintBoxEffectLastWasFade)
        {
            // just fading, do it quick now!
            hintBoxNewText = text;
            hintBoxEffect = new Effect.Fade($('hint_box'), {duration: 0.1, afterFinish: showHintBox2Quick});
            return;
        }
    }
    
    $('hint_box').update(text);
    hintBoxEffect = new Effect.Appear($('hint_box'), {duration: 0.4, afterFinish: doneHintBoxEffect });
    hintBoxEffectLastWasFade = false;
}

function showHintBox2Quick() 
{    
    $('hint_box').update(hintBoxNewText);
    hintBoxEffect = new Effect.Appear($('hint_box'), {duration: 0.1, afterFinish: doneHintBoxEffect });
    hintBoxEffectLastWasFade = false;
}

function hideHintBox() 
{
    if (hintBoxEffect != null) hintBoxEffect.cancel();
    hintBoxEffect = new Effect.Fade($('hint_box'), {duration: 0.4, afterFinish: doneHintBoxEffect });
    hintBoxEffectLastWasFade = true;
}

function doneHintBoxEffect()
{
    hintBoxEffect = null;
}
