Skip to content

Instantly share code, notes, and snippets.

@Fryguy
Last active October 9, 2015 19:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Fryguy/a3c2dd1136abbec5788b to your computer and use it in GitHub Desktop.
Save Fryguy/a3c2dd1136abbec5788b to your computer and use it in GitHub Desktop.
SlickGrid changes
diff --git a/generated_slick.grid.css b/app/assets/stylesheets/slick.grid.css
index fb2bede..6cc53a4 100644
--- a/generated_slick.grid.css
+++ b/app/assets/stylesheets/slick.grid.css
@@ -4,14 +4,21 @@ In order to preserve the uniform grid appearance, all cell styles need to have p
No built-in (selected, editable, highlight, flashing, invalid, loading, :focus) or user-specified CSS
classes should alter those!
*/
-/* line 10, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
+
+/*Override Bootstrap box-sizing*/
+.slick-header-column.ui-state-default
+ {
+ -webkit-box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+}
+
.slick-header.ui-state-default, .slick-headerrow.ui-state-default {
width: 100%;
overflow: hidden;
border-left: 0px;
}
-/* line 16, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-header-columns, .slick-headerrow-columns {
position: relative;
white-space: nowrap;
@@ -19,35 +26,42 @@ classes should alter those!
overflow: hidden;
}
-/* line 23, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-header-column.ui-state-default {
position: relative;
display: inline-block;
overflow: hidden;
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
- height: 16px;
- line-height: 16px;
+ height: 19px;
+ line-height: 19px;
margin: 0;
padding: 4px;
- border-right: 1px solid silver;
- border-left: 0px;
- border-top: 0px;
- border-bottom: 0px;
+ padding-left:10px;
+ border: 1px solid #d1d1d1;
+ border-left: 1px solid #f5f5f5;
float: left;
+ background-image: -webkit-linear-gradient(top, #fafafa, #ededed); /* For Chrome and Safari */
+ background-image: -moz-linear-gradient(top, #fafafa, #ededed); /* For old Fx (3.6 to 15) */
+ background-image: -ms-linear-gradient(top, #fafafa, #ededed); /* For pre-releases of IE 10*/
+ background-image: -o-linear-gradient(top, #fafafa, #ededed); /* For old Opera (11.1 to 12.0) */
+ background-image: linear-gradient(top, #fafafa, #ededed); /* Standard syntax; must be last */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fafafa', endColorstr='#ededed',GradientType=0 ); /* IE6-9 */
+ font: normal 11px OpenSansSemibold,Arial,Helvetica,sans-serif;
+ color: #4d5258;
+}
+
+.slick-header-column.ui-state-default:first-child {
+ border-left: 1px solid #d1d1d1;
}
-/* line 40, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-headerrow-column.ui-state-default {
padding: 4px;
}
-/* line 44, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-header-column-sorted {
font-style: italic;
}
-/* line 48, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-sort-indicator {
display: inline-block;
width: 8px;
@@ -57,17 +71,14 @@ classes should alter those!
float: left;
}
-/* line 57, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-sort-indicator-desc {
- background: url(/assets/slickgrid/images/sort-desc.gif);
+ background: url(images/sort-desc.gif);
}
-/* line 61, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-sort-indicator-asc {
- background: url(/assets/slickgrid/images/sort-asc.gif);
+ background: url(images/sort-asc.gif);
}
-/* line 65, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-resizable-handle {
position: absolute;
font-size: 0.1px;
@@ -79,47 +90,49 @@ classes should alter those!
height: 100%;
}
-/* line 76, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-sortable-placeholder {
background: silver;
}
-/* line 80, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.grid-canvas {
position: relative;
outline: 0;
}
-/* line 85, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-row.ui-widget-content, .slick-row.ui-state-active {
position: absolute;
border: 0px;
width: 100%;
}
-/* line 91, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-cell, .slick-headerrow-column {
position: absolute;
border: 1px solid transparent;
- border-right: 1px dotted silver;
- border-bottom-color: silver;
+ border-right: 1px solid #d1d1d1;
+ border-bottom-color: #e7e7e7;
overflow: hidden;
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
vertical-align: middle;
z-index: 1;
- padding: 1px 2px 2px 1px;
+ padding: 2px 2px 2px 10px;
margin: 0;
white-space: nowrap;
cursor: default;
+ color: #4d5258;
+ height: 34px !important;
+}
+
+.slick-cell:first-child {
+ border-left: 1px solid #d1d1d1;
+}
+.slick-group {
}
-/* line 110, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-group-toggle {
display: inline-block;
}
-/* line 114, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-cell.highlighted {
background: lightskyblue;
background: rgba(0, 0, 255, 0.2);
@@ -129,12 +142,10 @@ classes should alter those!
transition: all 0.5s;
}
-/* line 123, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-cell.flashing {
border: 1px solid red !important;
}
-/* line 127, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-cell.editable {
z-index: 11;
overflow: visible;
@@ -143,12 +154,10 @@ classes should alter those!
border-style: solid;
}
-/* line 135, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-cell:focus {
outline: none;
}
-/* line 139, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-reorder-proxy {
display: inline-block;
background: blue;
@@ -157,7 +166,6 @@ classes should alter those!
cursor: move;
}
-/* line 147, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-reorder-guide {
display: inline-block;
height: 2px;
@@ -166,10 +174,8 @@ classes should alter those!
filter: alpha(opacity = 70);
}
-/* line 155, /Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/stylesheets/slickgrid/slick.grid.scss */
.slick-selection {
z-index: 10;
position: absolute;
border: 2px dashed black;
}
-
diff --git a/Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/javascripts/slickgrid/slick.grid.js b/app/assets/javascripts/SlickGrid-2.1/slick.grid.js
index 6fdbdba..d47ccc0 100644
--- a/Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/javascripts/slickgrid/slick.grid.js
+++ b/app/assets/javascripts/SlickGrid-2.1/slick.grid.js
@@ -904,23 +904,31 @@ if (typeof Slick === "undefined") {
function createCssRules() {
$style = $("<style type='text/css' rel='stylesheet' />").appendTo($("head"));
var rowHeight = (options.rowHeight - cellHeightDiff);
- var rules = [
- "." + uid + " .slick-header-column { left: 1000px; }",
- "." + uid + " .slick-top-panel { height:" + options.topPanelHeight + "px; }",
- "." + uid + " .slick-headerrow-columns { height:" + options.headerRowHeight + "px; }",
- "." + uid + " .slick-cell { height:" + rowHeight + "px; }",
- "." + uid + " .slick-row { height:" + options.rowHeight + "px; }"
- ];
-
- for (var i = 0; i < columns.length; i++) {
- rules.push("." + uid + " .l" + i + " { }");
- rules.push("." + uid + " .r" + i + " { }");
- }
-
if ($style[0].styleSheet) { // IE
- $style[0].styleSheet.cssText = rules.join(" ");
+ $style[0].styleSheet.cssText = "";
} else {
- $style[0].appendChild(document.createTextNode(rules.join(" ")));
+ $style[0].appendChild(document.createTextNode(""));
+ }
+ var sheet = $style[0].sheet;
+ var index = 0;
+ addCSSRule(sheet,"." + uid + " .slick-header-column", "left: 1000px;",index++);
+ addCSSRule(sheet,"." + uid + " .slick-top-panel", "height:" + options.topPanelHeight + "px;",index++);
+ addCSSRule(sheet,"." + uid + " .slick-headerrow-columns", "height:" + options.headerRowHeight + "px;",index++);
+ addCSSRule(sheet,"." + uid + " .slick-cell", "height:" + rowHeight + "px;",index++);
+ addCSSRule(sheet,"." + uid + " .slick-row", "height:" + options.rowHeight + "px;",index++);
+
+ for (var i = 0; i < columns.length; i++) {
+ addCSSRule(sheet,"." + uid + " .l" + i , "",index++);
+ addCSSRule(sheet,"." + uid + " .r" + i, "",index++);
+ }
+ }
+
+ function addCSSRule(sheet, selector, rules, index) {
+ if(sheet.insertRule) {
+ sheet.insertRule(selector + "{" + rules + "}", index);
+ }
+ else {
+ sheet.addRule(selector, rules, index);
}
}
diff --git a/Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/javascripts/slickgrid/plugins/slick.rowselectionmodel.js b/app/assets/javascripts/SlickGrid-2.1/plugins/slick.rowselectionmodel.js
index 28e7e43..5f0f3e6 100644
--- a/Users/jfrey/.gem/ruby/2.2.3/gems/rails-assets-slickgrid-2.1.0/app/assets/javascripts/slickgrid/plugins/slick.rowselectionmodel.js
+++ b/app/assets/javascripts/SlickGrid-2.1/plugins/slick.rowselectionmodel.js
@@ -134,13 +134,14 @@
return false;
}
+ if (!_grid.getOptions().multiSelect || (
+ !e.ctrlKey && !e.shiftKey && !e.metaKey)) {
+ return false;
+ }
+
var selection = rangesToRows(_ranges);
var idx = $.inArray(cell.row, selection);
- if (!e.ctrlKey && !e.shiftKey && !e.metaKey) {
- return false;
- }
- else if (_grid.getOptions().multiSelect) {
if (idx === -1 && (e.ctrlKey || e.metaKey)) {
selection.push(cell.row);
_grid.setActiveCell(cell.row, cell.cell);
@@ -162,7 +163,6 @@
selection.push(last);
_grid.setActiveCell(cell.row, cell.cell);
}
- }
_ranges = rowsToRanges(selection);
setSelectedRanges(_ranges);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment