/*! jGrid Plugin - v0.1.0 - 2012-09-03 * https://github.com/dpiatek/jgrid * Copyright (c) 2012 Dominik Piatek; Licensed MIT */ (function(a){var b={init:function(b){this.self=this,window.updateID=null,this.keylistener(),this.addmenu(),this.updateGrid(),a("#jgrid-setup, #jgrid-overlay, #jgrid-col-width").hide()},addmenu:function(){a("head").append(""),a("body").append('
pxpxHide
')},keylistener:function(){var b=!1,c=!1,d=this.self;a("body").on("keyup",function(a){a.which===16&&(c=!1),a.which===17&&(b=!1)}),a("body").on("keydown",d,function(e){e.which===17&&(b=!0),e.which===16&&(c=!0),e.which===76&&b&&c&&(window.clearTimeout(d.updateID),a("#jgrid-setup, #jgrid-overlay, #jgrid-col-width").toggle(),a("#jgrid-setup").css("display")!=="none"&&d.updateGrid())})},setupGrid:function(b,c){var d="",e=null;a("#jgrid-overlay").length||(a("body").append('
'),a("#jgrid-wrapper").width(c.wrapper)),e=a("#jgrid-wrapper"),e.empty();for(var f=0;f";e.width(c.wrapper),e.append(d),e.find("span").width(b).css("margin-right",c.gutter),e.find("span:first-child").css("margin-left",c.marLeft),e.find("span:last-child").css("margin-right",c.marRight)},calculateGrid:function(a){var b=(a.wrapper-a.marLeft-a.marRight-(a.columns-1)*a.gutter)/a.columns,c=a.columns*b+(a.columns-1)*a.gutter+a.marLeft+a.marRight,d=Math.round(b/a.wrapper*1e4)/1e3;this.setupGrid(b,a),this.updateColWidth(b,d)},getDimensions:function(){var b={};b.wrapper=parseInt(a("input[name=wrapper]").val(),10)||0,b.columns=parseInt(a("input[name=columns]").val(),10)||1,b.gutter=parseInt(a("input[name=gutter]").val(),10)||0,b.marLeft=parseInt(a("input[name=marLeft]").val(),10)||0,b.marRight=parseInt(a("input[name=marRight]").val(),10)||0,this.calculateGrid(b)},updateColWidth:function(b,c){var d=a("#jgrid-col-width");d.length||(a("body").append(''),d=a("#jgrid-col-width")),typeof b!="number"||b%1!==0?(b=Math.round(b*100)/100,d.css("color","#F55")):(b=b+"px",d.css("color","#DDD")),c=isNaN(c)?"0%":c+"%",d.text("Column width: "+b),d.append("
"+c)},updateGrid:function(){var a=this.self;this.getDimensions(),this.updateID=window.setTimeout(function(){a.updateGrid()},1e3,a)}};b.init()})(jQuery);