// JavaScript Document

/*
 * jquery apple dock menu
 * 
 *  @author Erik Willems
 *  
 *  options:
 *  defaultImageSize: smallest image size in px            / default value = 35
 *  maxImageSize:     maximum image size in px             / default value = 1000
 *  triggerDistance:  distance from the trigger area in px / default value = 200
 */

(function(a){a.fn.extend({dockMenu:function(b){var c={defaultImageSize:35,maxImageSize:55,triggerDistance:200};var b=a.extend(c,b);return this.each(function(){var g=a(this);var h=b;var d=h.maxImageSize-h.defaultImageSize;var f=d/h.triggerDistance;var e=false;g.find("img").each(function(){a(this).width(h.defaultImageSize);});a(document).mousemove(function(k){var j=k.pageX;var i=k.pageY;g.find("img").each(function(){var n=a(this).offset();var m=g.calculateDistance(a(this).width(),n.left+(a(this).width()/2),n.top/2+(a(this).height()/2),j,i);if(m<h.triggerDistance){if(m<0){m=0;}e=true;var l=h.defaultImageSize+(d-(m*f));a(this).width(l);}else{a(this).width(h.defaultImageSize);}});});});}});a.fn.calculateDistance=function(g,c,i,e,d){var f=Math.sqrt((c-e)*(c-e)+(i-d)*(i-d));vx=e-c;vy=d-i;var b=0;var h=0;if(vx>vy){if(vx>-vy){b=1;}else{h=1;}}else{if(vx>-vy){h=-1;}else{b=-1;}}vlength=Math.sqrt((vx*vx)+(vy*vy));vux=vx/vlength;vuy=vy/vlength;cosA=vux*b+vuy*h;centreToSqEdge=Math.abs((0.5*g)/cosA);mouseToSquareEdge=vlength-centreToSqEdge;return mouseToSquareEdge;};})(jQuery);
