diff --git a/demo/customcolumns.html b/demo/customcolumns.html index 0d5d77d..ce71860 100644 --- a/demo/customcolumns.html +++ b/demo/customcolumns.html @@ -45,7 +45,7 @@ $("#mycanvas").gridmanager({ debug : 1 , - buttons: [[12], [6,6], [4,4,4], [3,3,3,3], [2,1,2,1,2,1,3], [1,3,1,4,3], [2,8,2], [4,8], [8,4]] + controlButtons: [[12], [6,6], [4,8,4], [3,7,1,1], [2,1,2,1,2,1,3], [1,3,1,4,3], [2,8,2], [4,8], [8,4]] }); diff --git a/demo/fluid.html b/demo/fluid.html new file mode 100644 index 0000000..b01ac66 --- /dev/null +++ b/demo/fluid.html @@ -0,0 +1,59 @@ + + +
+ +" + source + ""); + gm.log(source); + modal.modal(); - // Row settings + /* Row settings - coming at some point }).on("click", "a.gm-rowSettings", function(){ gm.log("settings"); + */ + // Add new column to existing row }).on("click", "a.gm-addColumn", function(){ $(this).parent().after(gm.createCol(2)); @@ -93,7 +98,7 @@ }).on("click", "a.gm-colDecrease", function(){ var col = $(this).closest("div.gm-editing"); var t=gm.getColClass(col); - if(t.colWidth > gm.options.col.min){ + if(t.colWidth > gm.options.colMin){ t.colWidth--; col.switchClass(t.colClass, "col-md-" + t.colWidth, 200); } @@ -102,7 +107,7 @@ }).on("click", "a.gm-colIncrease", function(){ var col = $(this).closest("div.gm-editing"); var t=gm.getColClass(col); - if(t.colWidth < gm.options.col.max){ + if(t.colWidth < gm.options.colMax){ t.colWidth++; col.switchClass(t.colClass, "col-md-" + t.colWidth, 200); } @@ -139,9 +144,9 @@ // Turns canvas into gm-editing mode - does most of the hard work here gm.initCanvas = function(){ // cache canvas - var canvas=gm.$el.find("#" + gm.options.canvas.id); - var cols=canvas.find(gm.options.col.selector); - var rows=canvas.find(gm.options.row.selector); + var canvas=gm.$el.find("#" + gm.options.canvasId); + var cols=canvas.find(gm.options.colSelector); + var rows=canvas.find(gm.options.rowSelector); gm.log("+ InitCanvas Running"); // Show the template controls gm.$el.find("#gm-addnew").show(); @@ -151,24 +156,22 @@ gm.activateCols(cols); // Make Rows sortable canvas.sortable({ - items: gm.options.row.selector + ".gm-editing", + items: gm.options.rowSelector + ".gm-editing", axis: 'y', placeholder: 'bg-warning', handle: ".gm-tools", forcePlaceholderSize: true, opacity: 0.7, revert: true, - containment: "parent", tolerance: "pointer", cursor: "move" }); // Make columns sortable rows.sortable({ - items: gm.options.col.selector, + items: gm.options.colSelector, axis: 'x', handle: ".gm-tools" , forcePlaceholderSize: true, opacity: 0.7, revert: true, - containment: "parent", - tolerance: "pointer", + tolerance: "pointer", cursor: "move" }); @@ -177,9 +180,9 @@ gm.deinitCanvas = function(){ // cache canvas - var canvas=gm.$el.find("#" + gm.options.canvas.id); - var cols=canvas.find(gm.options.col.selector); - var rows=canvas.find(gm.options.row.selector); + var canvas=gm.$el.find("#" + gm.options.canvasId); + var cols=canvas.find(gm.options.colSelector); + var rows=canvas.find(gm.options.rowSelector); gm.log("- deInitCanvas Running"); // Hide template control @@ -197,7 +200,7 @@ // Push cleaned div content somewhere to save it gm.saveremote = function(){ - var canvas=gm.$el.find("#" + gm.options.canvas.id); + var canvas=gm.$el.find("#" + gm.options.canvasId); $.ajax({ type: "POST", url: gm.options.remoteURL, @@ -209,8 +212,8 @@ /*------------------------------------------ ROWS ---------------------------------------*/ gm.activateRows = function(rows){ gm.log("++ Activate Rows Ran"); - var prepend=gm.toolFactory(gm.options.row.buttonsPrepend); - var append=gm.toolFactory(gm.options.row.buttonsAppend); + var prepend=gm.toolFactory(gm.options.rowButtonsPrepend); + var append=gm.toolFactory(gm.options.rowButtonsAppend); rows.addClass("gm-editing").prepend(prepend).append(append); }; @@ -221,10 +224,10 @@ // Creates a row, accepting an array of column widths to create child cols gm.createRow = function(colWidths){ - var rowHTML= gm.options.row.prepend + gm.toolFactory(gm.options.row.buttonsPrepend) + gm.options.row.append; - $.each(colWidths, function(i, val){ - rowHTML=rowHTML + gm.createCol(val); - }); + var rowHTML= gm.options.rowPrepend + gm.toolFactory(gm.options.rowButtonsPrepend) + gm.options.rowAppend; + $.each(colWidths, function(i, val){ + rowHTML=rowHTML + gm.createCol(val); + }); return rowHTML; }; @@ -232,8 +235,8 @@ gm.activateCols = function(cols){ cols.addClass("gm-editing"); $.each(cols, function(i, val){ - var prepend=gm.toolFactory(gm.options.col.buttonsPrepend) + "
Content here
"; - var append="Content here
"; + var append="Content here
",c=""+c+""),d.log(c),e.modal()}).on("click","a.gm-addColumn",function(){a(this).parent().after(d.createCol(2))}).on("click","a.gm-colDecrease",function(){var b=a(this).closest("div.gm-editing"),c=d.getColClass(b);c.colWidth>d.options.colMin&&(c.colWidth--,b.switchClass(c.colClass,"col-md-"+c.colWidth,200))}).on("click","a.gm-colIncrease",function(){var b=a(this).closest("div.gm-editing"),c=d.getColClass(b);c.colWidth
Content here
",c="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque hendrerit lorem sed posuere eleifend. Ut nec tellus sed erat iaculis bibendum ac et diam. Cras convallis tincidunt placerat. Duis posuere leo quis tincidunt iaculis. Vestibulum pulvinar, neque quis cursus rhoncus, justo mi dictum enim, non facilisis ligula justo eleifend felis. Donec velit nibh, egestas eu sapien at, bibendum consectetur urna. Donec tincidunt vitae erat vitae congue.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque hendrerit lorem sed posuere eleifend. Ut nec tellus sed erat iaculis bibendum ac et diam. Cras convallis tincidunt placerat. Duis posuere leo quis tincidunt iaculis. Vestibulum pulvinar, neque quis cursus rhoncus, justo mi dictum enim, non facilisis ligula justo eleifend felis. Donec velit nibh, egestas eu sapien at, bibendum consectetur urna. Donec tincidunt vitae erat vitae congue.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque hendrerit lorem sed posuere eleifend. Ut nec tellus sed erat iaculis bibendum ac et diam. Cras convallis tincidunt placerat. Duis posuere leo quis tincidunt iaculis. Vestibulum pulvinar, neque quis cursus rhoncus, justo mi dictum enim, non facilisis ligula justo eleifend felis. Donec velit nibh, egestas eu sapien at, bibendum consectetur urna. Donec tincidunt vitae erat vitae congue.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque hendrerit lorem sed posuere eleifend. Ut nec tellus sed erat iaculis bibendum ac et diam. Cras convallis tincidunt placerat. Duis posuere leo quis tincidunt iaculis. Vestibulum pulvinar, neque quis cursus rhoncus, justo mi dictum enim, non facilisis ligula justo eleifend felis. Donec velit nibh, egestas eu sapien at, bibendum consectetur urna. Donec tincidunt vitae erat vitae congue.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
" + source + ""); + gm.log(source); + modal.modal(); - // Row settings + /* Row settings - coming at some point }).on("click", "a.gm-rowSettings", function(){ gm.log("settings"); + */ + // Add new column to existing row }).on("click", "a.gm-addColumn", function(){ $(this).parent().after(gm.createCol(2)); @@ -99,7 +104,7 @@ }).on("click", "a.gm-colDecrease", function(){ var col = $(this).closest("div.gm-editing"); var t=gm.getColClass(col); - if(t.colWidth > gm.options.col.min){ + if(t.colWidth > gm.options.colMin){ t.colWidth--; col.switchClass(t.colClass, "col-md-" + t.colWidth, 200); } @@ -108,7 +113,7 @@ }).on("click", "a.gm-colIncrease", function(){ var col = $(this).closest("div.gm-editing"); var t=gm.getColClass(col); - if(t.colWidth < gm.options.col.max){ + if(t.colWidth < gm.options.colMax){ t.colWidth++; col.switchClass(t.colClass, "col-md-" + t.colWidth, 200); } @@ -145,9 +150,9 @@ // Turns canvas into gm-editing mode - does most of the hard work here gm.initCanvas = function(){ // cache canvas - var canvas=gm.$el.find("#" + gm.options.canvas.id); - var cols=canvas.find(gm.options.col.selector); - var rows=canvas.find(gm.options.row.selector); + var canvas=gm.$el.find("#" + gm.options.canvasId); + var cols=canvas.find(gm.options.colSelector); + var rows=canvas.find(gm.options.rowSelector); gm.log("+ InitCanvas Running"); // Show the template controls gm.$el.find("#gm-addnew").show(); @@ -157,24 +162,22 @@ gm.activateCols(cols); // Make Rows sortable canvas.sortable({ - items: gm.options.row.selector + ".gm-editing", + items: gm.options.rowSelector + ".gm-editing", axis: 'y', placeholder: 'bg-warning', handle: ".gm-tools", forcePlaceholderSize: true, opacity: 0.7, revert: true, - containment: "parent", tolerance: "pointer", cursor: "move" }); // Make columns sortable rows.sortable({ - items: gm.options.col.selector, + items: gm.options.colSelector, axis: 'x', handle: ".gm-tools" , forcePlaceholderSize: true, opacity: 0.7, revert: true, - containment: "parent", - tolerance: "pointer", + tolerance: "pointer", cursor: "move" }); @@ -183,9 +186,9 @@ gm.deinitCanvas = function(){ // cache canvas - var canvas=gm.$el.find("#" + gm.options.canvas.id); - var cols=canvas.find(gm.options.col.selector); - var rows=canvas.find(gm.options.row.selector); + var canvas=gm.$el.find("#" + gm.options.canvasId); + var cols=canvas.find(gm.options.colSelector); + var rows=canvas.find(gm.options.rowSelector); gm.log("- deInitCanvas Running"); // Hide template control @@ -203,7 +206,7 @@ // Push cleaned div content somewhere to save it gm.saveremote = function(){ - var canvas=gm.$el.find("#" + gm.options.canvas.id); + var canvas=gm.$el.find("#" + gm.options.canvasId); $.ajax({ type: "POST", url: gm.options.remoteURL, @@ -215,8 +218,8 @@ /*------------------------------------------ ROWS ---------------------------------------*/ gm.activateRows = function(rows){ gm.log("++ Activate Rows Ran"); - var prepend=gm.toolFactory(gm.options.row.buttonsPrepend); - var append=gm.toolFactory(gm.options.row.buttonsAppend); + var prepend=gm.toolFactory(gm.options.rowButtonsPrepend); + var append=gm.toolFactory(gm.options.rowButtonsAppend); rows.addClass("gm-editing").prepend(prepend).append(append); }; @@ -227,10 +230,10 @@ // Creates a row, accepting an array of column widths to create child cols gm.createRow = function(colWidths){ - var rowHTML= gm.options.row.prepend + gm.toolFactory(gm.options.row.buttonsPrepend) + gm.options.row.append; - $.each(colWidths, function(i, val){ - rowHTML=rowHTML + gm.createCol(val); - }); + var rowHTML= gm.options.rowPrepend + gm.toolFactory(gm.options.rowButtonsPrepend) + gm.options.rowAppend; + $.each(colWidths, function(i, val){ + rowHTML=rowHTML + gm.createCol(val); + }); return rowHTML; }; @@ -238,8 +241,8 @@ gm.activateCols = function(cols){ cols.addClass("gm-editing"); $.each(cols, function(i, val){ - var prepend=gm.toolFactory(gm.options.col.buttonsPrepend) + "
Content here
"; - var append="Content here
"; + var append="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque hendrerit lorem sed posuere eleifend. Ut nec tellus sed erat iaculis bibendum ac et diam. Cras convallis tincidunt placerat. Duis posuere leo quis tincidunt iaculis. Vestibulum pulvinar, neque quis cursus rhoncus, justo mi dictum enim, non facilisis ligula justo eleifend felis. Donec velit nibh, egestas eu sapien at, bibendum consectetur urna. Donec tincidunt vitae erat vitae congue.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque hendrerit lorem sed posuere eleifend. Ut nec tellus sed erat iaculis bibendum ac et diam. Cras convallis tincidunt placerat. Duis posuere leo quis tincidunt iaculis. Vestibulum pulvinar, neque quis cursus rhoncus, justo mi dictum enim, non facilisis ligula justo eleifend felis. Donec velit nibh, egestas eu sapien at, bibendum consectetur urna. Donec tincidunt vitae erat vitae congue.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Vivamus faucibus nibh ut aliquam dignissim. Nunc tempus velit sit amet eleifend tempor. Aliquam vel tortor euismod, viverra urna tempus, scelerisque ipsum. Pellentesque at mauris non tortor elementum pretium. Integer rutrum libero at facilisis interdum. Praesent lobortis elit erat, quis elementum justo rhoncus eu. Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.
Ut eu dui lectus. Duis faucibus eu augue ut placerat.