@deephaven/grid 0.15.1 → 0.15.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/dist/ColumnHeaderGroup.d.ts +9 -0
  2. package/dist/ColumnHeaderGroup.d.ts.map +1 -0
  3. package/dist/ColumnHeaderGroup.js +2 -0
  4. package/dist/ColumnHeaderGroup.js.map +1 -0
  5. package/dist/Grid.d.ts +5 -4
  6. package/dist/Grid.d.ts.map +1 -1
  7. package/dist/Grid.js +5 -6
  8. package/dist/Grid.js.map +1 -1
  9. package/dist/GridAxisRange.d.ts +10 -0
  10. package/dist/GridAxisRange.d.ts.map +1 -0
  11. package/dist/GridAxisRange.js +17 -0
  12. package/dist/GridAxisRange.js.map +1 -0
  13. package/dist/GridMetricCalculator.d.ts +10 -8
  14. package/dist/GridMetricCalculator.d.ts.map +1 -1
  15. package/dist/GridMetricCalculator.js +38 -16
  16. package/dist/GridMetricCalculator.js.map +1 -1
  17. package/dist/GridMetrics.d.ts +8 -4
  18. package/dist/GridMetrics.d.ts.map +1 -1
  19. package/dist/GridModel.d.ts +20 -2
  20. package/dist/GridModel.d.ts.map +1 -1
  21. package/dist/GridModel.js +30 -2
  22. package/dist/GridModel.js.map +1 -1
  23. package/dist/GridMouseHandler.d.ts +0 -1
  24. package/dist/GridMouseHandler.d.ts.map +1 -1
  25. package/dist/GridRenderer.d.ts +33 -6
  26. package/dist/GridRenderer.d.ts.map +1 -1
  27. package/dist/GridRenderer.js +428 -179
  28. package/dist/GridRenderer.js.map +1 -1
  29. package/dist/GridUtils.d.ts +34 -24
  30. package/dist/GridUtils.d.ts.map +1 -1
  31. package/dist/GridUtils.js +99 -61
  32. package/dist/GridUtils.js.map +1 -1
  33. package/dist/MockGridModel.d.ts +1 -1
  34. package/dist/MockGridModel.d.ts.map +1 -1
  35. package/dist/MockGridModel.js +1 -0
  36. package/dist/MockGridModel.js.map +1 -1
  37. package/dist/MockTreeGridModel.d.ts +0 -1
  38. package/dist/MockTreeGridModel.d.ts.map +1 -1
  39. package/dist/index.d.ts +2 -0
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +2 -0
  42. package/dist/index.js.map +1 -1
  43. package/dist/mouse-handlers/GridColumnMoveMouseHandler.d.ts +44 -4
  44. package/dist/mouse-handlers/GridColumnMoveMouseHandler.d.ts.map +1 -1
  45. package/dist/mouse-handlers/GridColumnMoveMouseHandler.js +486 -80
  46. package/dist/mouse-handlers/GridColumnMoveMouseHandler.js.map +1 -1
  47. package/dist/mouse-handlers/GridColumnSeparatorMouseHandler.d.ts +7 -5
  48. package/dist/mouse-handlers/GridColumnSeparatorMouseHandler.d.ts.map +1 -1
  49. package/dist/mouse-handlers/GridColumnSeparatorMouseHandler.js +26 -14
  50. package/dist/mouse-handlers/GridColumnSeparatorMouseHandler.js.map +1 -1
  51. package/dist/mouse-handlers/GridRowSeparatorMouseHandler.d.ts +7 -5
  52. package/dist/mouse-handlers/GridRowSeparatorMouseHandler.d.ts.map +1 -1
  53. package/dist/mouse-handlers/GridRowSeparatorMouseHandler.js +11 -14
  54. package/dist/mouse-handlers/GridRowSeparatorMouseHandler.js.map +1 -1
  55. package/dist/mouse-handlers/GridSeparatorMouseHandler.d.ts +11 -4
  56. package/dist/mouse-handlers/GridSeparatorMouseHandler.d.ts.map +1 -1
  57. package/dist/mouse-handlers/GridSeparatorMouseHandler.js +41 -31
  58. package/dist/mouse-handlers/GridSeparatorMouseHandler.js.map +1 -1
  59. package/dist/mouse-handlers/index.d.ts +1 -0
  60. package/dist/mouse-handlers/index.js +1 -0
  61. package/dist/mouse-handlers/index.js.map +1 -1
  62. package/package.json +3 -3
package/dist/GridModel.js CHANGED
@@ -36,6 +36,18 @@ class GridModel extends EventTarget {
36
36
  get floatingRightColumnCount() {
37
37
  return 0;
38
38
  }
39
+ /**
40
+ * How many columns header levels are in the grid
41
+ * Used for column grouping where columns at depth 0 are the base columns
42
+ *
43
+ * A grid with 1-level grouping would have a columnHeaderDepth of 2
44
+ * and column headers at depths 0 and 1
45
+ */
46
+
47
+
48
+ get columnHeaderMaxDepth() {
49
+ return 1;
50
+ }
39
51
  /**
40
52
  * Get the text for the specified cell
41
53
  * @param column Column to get the text for
@@ -92,12 +104,19 @@ class GridModel extends EventTarget {
92
104
  /**
93
105
  * Text for the column header
94
106
  * @param column Column to get the header for
107
+ * @param depth Depth to get the header text for. 0 is base columns
95
108
  * @returns Text to put in the column header
96
109
  */
97
110
 
98
111
 
99
- textForColumnHeader(column) {
100
- return '';
112
+ /** Color for column header
113
+ * @param column Column to get the color for
114
+ * @param depth Header depth to get the color for
115
+ * @returns Color for the header at the depth or null
116
+ */
117
+ colorForColumnHeader(column) {
118
+ var depth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
119
+ return null;
101
120
  }
102
121
  /**
103
122
  * Text for the row header
@@ -126,6 +145,7 @@ class GridModel extends EventTarget {
126
145
 
127
146
 
128
147
  isColumnMovable(column) {
148
+ var depth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
129
149
  return true;
130
150
  }
131
151
  /**
@@ -138,6 +158,14 @@ class GridModel extends EventTarget {
138
158
  return true;
139
159
  }
140
160
 
161
+ getColumnHeaderGroup(modelIndex, depth) {
162
+ return undefined;
163
+ }
164
+
165
+ getColumnHeaderParentGroup(modelIndex, depth) {
166
+ return undefined;
167
+ }
168
+
141
169
  }
142
170
 
143
171
  export default GridModel;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/GridModel.ts"],"names":["EventTarget","GridModel","floatingTopRowCount","floatingBottomRowCount","floatingLeftColumnCount","floatingRightColumnCount","truncationCharForCell","column","row","undefined","textAlignForCell","colorForCell","theme","textColor","backgroundColorForCell","textForColumnHeader","textForRowHeader","textForRowFooter","isColumnMovable","isRowMovable"],"mappings":"AAAA,SAASA,WAAT,QAAmC,mBAAnC;;AAIA;;AACA;;AACA;AACA;AACA;AACA;AACA;AACA,MAAeC,SAAf,SAMUD,WANV,CAMwC;AACtC;;AAGA;;AAGA;AACuB,MAAnBE,mBAAmB,GAAW;AAChC,WAAO,CAAP;AACD;AAED;;;AAC0B,MAAtBC,sBAAsB,GAAW;AACnC,WAAO,CAAP;AACD;AAED;;;AAC2B,MAAvBC,uBAAuB,GAAW;AACpC,WAAO,CAAP;AACD;AAED;;;AAC4B,MAAxBC,wBAAwB,GAAW;AACrC,WAAO,CAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AAGE;AACF;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,qBAAqB,CACnBC,MADmB,EAEnBC,GAFmB,EAGC;AACpB,WAAOC,SAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AACEC,EAAAA,gBAAgB,CAACH,MAAD,EAAqBC,GAArB,EAAuD;AACrE,WAAO,MAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;AACA;;;AACEG,EAAAA,YAAY,CACVJ,MADU,EAEVC,GAFU,EAGVI,KAHU,EAIC;AACX,WAAOA,KAAK,CAACC,SAAb;AACD;AAED;AACF;AACA;AACA;AACA;AACA;AACA;;;AACEC,EAAAA,sBAAsB,CACpBP,MADoB,EAEpBC,GAFoB,EAGpBI,KAHoB,EAID;AACnB,WAAO,IAAP;AACD;AAED;AACF;AACA;AACA;AACA;;;AACEG,EAAAA,mBAAmB,CAACR,MAAD,EAA6B;AAC9C,WAAO,EAAP;AACD;AAED;AACF;AACA;AACA;AACA;;;AACES,EAAAA,gBAAgB,CAACR,GAAD,EAA0B;AACxC,WAAO,EAAP;AACD;AAED;AACF;AACA;AACA;AACA;;;AACES,EAAAA,gBAAgB,CAACT,GAAD,EAA0B;AACxC,WAAO,EAAP;AACD;AAED;AACF;AACA;AACA;;;AACEU,EAAAA,eAAe,CAACX,MAAD,EAA8B;AAC3C,WAAO,IAAP;AACD;AAED;AACF;AACA;AACA;;;AACEY,EAAAA,YAAY,CAACX,GAAD,EAA2B;AACrC,WAAO,IAAP;AACD;;AAlIqC;;AAqIxC,eAAeP,SAAf","sourcesContent":["import { EventTarget, Event } from 'event-target-shim';\nimport { ModelIndex } from './GridMetrics';\nimport { GridColor, GridTheme, NullableGridColor } from './GridTheme';\n\n/* eslint class-methods-use-this: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/**\n * Model for a Grid\n * All of these methods should return very quickly, as they will be called many times in the render cycle.\n * If data needs to be loaded asynchronously, return something immediately, then trigger an event for the table to refresh (Not yet implemented).\n */\nabstract class GridModel<\n TEventMap extends Record<string, Event<string>> = Record<\n string,\n Event<string>\n >,\n TMode extends 'standard' | 'strict' = 'standard'\n> extends EventTarget<TEventMap, TMode> {\n /** Count of rows in the grid */\n abstract get rowCount(): number;\n\n /** Count of columns in the grid */\n abstract get columnCount(): number;\n\n /** Count of rows that are frozen (or 'floating') at the top */\n get floatingTopRowCount(): number {\n return 0;\n }\n\n /** Count of rows that are frozen at the bottom */\n get floatingBottomRowCount(): number {\n return 0;\n }\n\n /** Count of columns that are frozen (or 'floating') at the left */\n get floatingLeftColumnCount(): number {\n return 0;\n }\n\n /** Count of columns that are frozen (or 'floating') at the right */\n get floatingRightColumnCount(): number {\n return 0;\n }\n\n /**\n * Get the text for the specified cell\n * @param column Column to get the text for\n * @param row Row to get the text for\n * @returns Text for the specified cell\n */\n abstract textForCell(column: ModelIndex, row: ModelIndex): string;\n\n /**\n * Get the character to replace text when truncated for a specific cell.\n * Leave undefined to show text truncated with ellipsis\n * @param column Column to get the truncation character for\n * @param row Row to get the truncation character for\n * @returns Truncation character for the specified cell\n */\n truncationCharForCell(\n column: ModelIndex,\n row: ModelIndex\n ): string | undefined {\n return undefined;\n }\n\n /**\n * Get the text alignment for the specified cell\n * @param column Column to get the alignment for\n * @param row Row to get the alignment for\n * @returns Text alignment for the specified cell\n */\n textAlignForCell(column: ModelIndex, row: ModelIndex): CanvasTextAlign {\n return 'left';\n }\n\n /**\n * Get the color for the text in the specified cell\n * @param column Column to get the color for\n * @param row Row to get the color for\n * @param theme Theme applied to the grid\n * @returns Color for the text in the cell\n */\n colorForCell(\n column: ModelIndex,\n row: ModelIndex,\n theme: GridTheme\n ): GridColor {\n return theme.textColor;\n }\n\n /**\n * Get the background color for the cell\n * @param column Column to get the background color for\n * @param row Row to get the background color for\n * @param theme Theme applied to the grid\n * @returns Background color for the cell\n */\n backgroundColorForCell(\n column: ModelIndex,\n row: ModelIndex,\n theme: GridTheme\n ): NullableGridColor {\n return null;\n }\n\n /**\n * Text for the column header\n * @param column Column to get the header for\n * @returns Text to put in the column header\n */\n textForColumnHeader(column: ModelIndex): string {\n return '';\n }\n\n /**\n * Text for the row header\n * @param row Row to get the header for\n * @returns Text to put in the row header\n */\n textForRowHeader(row: ModelIndex): string {\n return '';\n }\n\n /**\n * Text for the row footer\n * @param row Row to get the footer for\n * @returns Text to put in the row footer\n */\n textForRowFooter(row: ModelIndex): string {\n return '';\n }\n\n /**\n * @param column Column to check\n * @returns True if the column is movable\n */\n isColumnMovable(column: ModelIndex): boolean {\n return true;\n }\n\n /**\n * @param row Row to check\n * @returns True if the row is movable\n */\n isRowMovable(row: ModelIndex): boolean {\n return true;\n }\n}\n\nexport default GridModel;\n"],"file":"GridModel.js"}
1
+ {"version":3,"sources":["../src/GridModel.ts"],"names":["EventTarget","GridModel","floatingTopRowCount","floatingBottomRowCount","floatingLeftColumnCount","floatingRightColumnCount","columnHeaderMaxDepth","truncationCharForCell","column","row","undefined","textAlignForCell","colorForCell","theme","textColor","backgroundColorForCell","colorForColumnHeader","depth","textForRowHeader","textForRowFooter","isColumnMovable","isRowMovable","getColumnHeaderGroup","modelIndex","getColumnHeaderParentGroup"],"mappings":"AAAA,SAASA,WAAT,QAAmC,mBAAnC;;AAKA;;AACA;;AACA;AACA;AACA;AACA;AACA;AACA,MAAeC,SAAf,SAMUD,WANV,CAMwC;AACtC;;AAGA;;AAGA;AACuB,MAAnBE,mBAAmB,GAAW;AAChC,WAAO,CAAP;AACD;AAED;;;AAC0B,MAAtBC,sBAAsB,GAAW;AACnC,WAAO,CAAP;AACD;AAED;;;AAC2B,MAAvBC,uBAAuB,GAAW;AACpC,WAAO,CAAP;AACD;AAED;;;AAC4B,MAAxBC,wBAAwB,GAAW;AACrC,WAAO,CAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;AACA;;;AAC0B,MAApBC,oBAAoB,GAAW;AACjC,WAAO,CAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AAGE;AACF;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,qBAAqB,CACnBC,MADmB,EAEnBC,GAFmB,EAGC;AACpB,WAAOC,SAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AACEC,EAAAA,gBAAgB,CAACH,MAAD,EAAqBC,GAArB,EAAuD;AACrE,WAAO,MAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;AACA;;;AACEG,EAAAA,YAAY,CACVJ,MADU,EAEVC,GAFU,EAGVI,KAHU,EAIC;AACX,WAAOA,KAAK,CAACC,SAAb;AACD;AAED;AACF;AACA;AACA;AACA;AACA;AACA;;;AACEC,EAAAA,sBAAsB,CACpBP,MADoB,EAEpBC,GAFoB,EAGpBI,KAHoB,EAID;AACnB,WAAO,IAAP;AACD;AAED;AACF;AACA;AACA;AACA;AACA;;;AAME;AACF;AACA;AACA;AACA;AACEG,EAAAA,oBAAoB,CAACR,MAAD,EAA+C;AAAA,QAA1BS,KAA0B,uEAAlB,CAAkB;AACjE,WAAO,IAAP;AACD;AAED;AACF;AACA;AACA;AACA;;;AACEC,EAAAA,gBAAgB,CAACT,GAAD,EAA0B;AACxC,WAAO,EAAP;AACD;AAED;AACF;AACA;AACA;AACA;;;AACEU,EAAAA,gBAAgB,CAACV,GAAD,EAA0B;AACxC,WAAO,EAAP;AACD;AAED;AACF;AACA;AACA;;;AACEW,EAAAA,eAAe,CAACZ,MAAD,EAAyC;AAAA,QAApBS,KAAoB,uEAAZ,CAAY;AACtD,WAAO,IAAP;AACD;AAED;AACF;AACA;AACA;;;AACEI,EAAAA,YAAY,CAACZ,GAAD,EAA2B;AACrC,WAAO,IAAP;AACD;;AAEDa,EAAAA,oBAAoB,CAClBC,UADkB,EAElBN,KAFkB,EAGc;AAChC,WAAOP,SAAP;AACD;;AAEDc,EAAAA,0BAA0B,CACxBD,UADwB,EAExBN,KAFwB,EAGQ;AAChC,WAAOP,SAAP;AACD;;AAtKqC;;AAyKxC,eAAeT,SAAf","sourcesContent":["import { EventTarget, Event } from 'event-target-shim';\nimport type { IColumnHeaderGroup } from './ColumnHeaderGroup';\nimport { ModelIndex } from './GridMetrics';\nimport { GridColor, GridTheme, NullableGridColor } from './GridTheme';\n\n/* eslint class-methods-use-this: \"off\" */\n/* eslint no-unused-vars: \"off\" */\n/**\n * Model for a Grid\n * All of these methods should return very quickly, as they will be called many times in the render cycle.\n * If data needs to be loaded asynchronously, return something immediately, then trigger an event for the table to refresh (Not yet implemented).\n */\nabstract class GridModel<\n TEventMap extends Record<string, Event<string>> = Record<\n string,\n Event<string>\n >,\n TMode extends 'standard' | 'strict' = 'standard'\n> extends EventTarget<TEventMap, TMode> {\n /** Count of rows in the grid */\n abstract get rowCount(): number;\n\n /** Count of columns in the grid */\n abstract get columnCount(): number;\n\n /** Count of rows that are frozen (or 'floating') at the top */\n get floatingTopRowCount(): number {\n return 0;\n }\n\n /** Count of rows that are frozen at the bottom */\n get floatingBottomRowCount(): number {\n return 0;\n }\n\n /** Count of columns that are frozen (or 'floating') at the left */\n get floatingLeftColumnCount(): number {\n return 0;\n }\n\n /** Count of columns that are frozen (or 'floating') at the right */\n get floatingRightColumnCount(): number {\n return 0;\n }\n\n /**\n * How many columns header levels are in the grid\n * Used for column grouping where columns at depth 0 are the base columns\n *\n * A grid with 1-level grouping would have a columnHeaderDepth of 2\n * and column headers at depths 0 and 1\n */\n get columnHeaderMaxDepth(): number {\n return 1;\n }\n\n /**\n * Get the text for the specified cell\n * @param column Column to get the text for\n * @param row Row to get the text for\n * @returns Text for the specified cell\n */\n abstract textForCell(column: ModelIndex, row: ModelIndex): string;\n\n /**\n * Get the character to replace text when truncated for a specific cell.\n * Leave undefined to show text truncated with ellipsis\n * @param column Column to get the truncation character for\n * @param row Row to get the truncation character for\n * @returns Truncation character for the specified cell\n */\n truncationCharForCell(\n column: ModelIndex,\n row: ModelIndex\n ): string | undefined {\n return undefined;\n }\n\n /**\n * Get the text alignment for the specified cell\n * @param column Column to get the alignment for\n * @param row Row to get the alignment for\n * @returns Text alignment for the specified cell\n */\n textAlignForCell(column: ModelIndex, row: ModelIndex): CanvasTextAlign {\n return 'left';\n }\n\n /**\n * Get the color for the text in the specified cell\n * @param column Column to get the color for\n * @param row Row to get the color for\n * @param theme Theme applied to the grid\n * @returns Color for the text in the cell\n */\n colorForCell(\n column: ModelIndex,\n row: ModelIndex,\n theme: GridTheme\n ): GridColor {\n return theme.textColor;\n }\n\n /**\n * Get the background color for the cell\n * @param column Column to get the background color for\n * @param row Row to get the background color for\n * @param theme Theme applied to the grid\n * @returns Background color for the cell\n */\n backgroundColorForCell(\n column: ModelIndex,\n row: ModelIndex,\n theme: GridTheme\n ): NullableGridColor {\n return null;\n }\n\n /**\n * Text for the column header\n * @param column Column to get the header for\n * @param depth Depth to get the header text for. 0 is base columns\n * @returns Text to put in the column header\n */\n abstract textForColumnHeader(\n column: ModelIndex,\n depth?: number\n ): string | undefined;\n\n /** Color for column header\n * @param column Column to get the color for\n * @param depth Header depth to get the color for\n * @returns Color for the header at the depth or null\n */\n colorForColumnHeader(column: ModelIndex, depth = 0): string | null {\n return null;\n }\n\n /**\n * Text for the row header\n * @param row Row to get the header for\n * @returns Text to put in the row header\n */\n textForRowHeader(row: ModelIndex): string {\n return '';\n }\n\n /**\n * Text for the row footer\n * @param row Row to get the footer for\n * @returns Text to put in the row footer\n */\n textForRowFooter(row: ModelIndex): string {\n return '';\n }\n\n /**\n * @param column Column to check\n * @returns True if the column is movable\n */\n isColumnMovable(column: ModelIndex, depth = 0): boolean {\n return true;\n }\n\n /**\n * @param row Row to check\n * @returns True if the row is movable\n */\n isRowMovable(row: ModelIndex): boolean {\n return true;\n }\n\n getColumnHeaderGroup(\n modelIndex: ModelIndex,\n depth: number\n ): IColumnHeaderGroup | undefined {\n return undefined;\n }\n\n getColumnHeaderParentGroup(\n modelIndex: ModelIndex,\n depth: number\n ): IColumnHeaderGroup | undefined {\n return undefined;\n }\n}\n\nexport default GridModel;\n"],"file":"GridModel.js"}
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { EventHandlerResult } from './EventHandlerResult';
3
2
  import Grid from './Grid';
4
3
  import { GridPoint } from './GridUtils';
@@ -1 +1 @@
1
- {"version":3,"file":"GridMouseHandler.d.ts","sourceRoot":"","sources":["../src/GridMouseHandler.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,oBAAY,cAAc,GAAG,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;AAE3D,oBAAY,cAAc,GAAG,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;AAE3D,oBAAY,4BAA4B,GACpC,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,eAAe,GACf,eAAe,GACf,MAAM,GACN,SAAS,CAAC;AAEd;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,KAAK,EAAE,MAAM,CAAC;gBAIF,KAAK,SAAO;IAKxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7B,MAAM,CACJ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,MAAM,CACJ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,MAAM,CACJ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,aAAa,CACX,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,aAAa,CACX,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,IAAI,CACF,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;CAGtB;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"GridMouseHandler.d.ts","sourceRoot":"","sources":["../src/GridMouseHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,oBAAY,cAAc,GAAG,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;AAE3D,oBAAY,cAAc,GAAG,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;AAE3D,oBAAY,4BAA4B,GACpC,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,eAAe,GACf,eAAe,GACf,MAAM,GACN,SAAS,CAAC;AAEd;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,KAAK,EAAE,MAAM,CAAC;gBAIF,KAAK,SAAO;IAKxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE7B,MAAM,CACJ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,MAAM,CACJ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,MAAM,CACJ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,aAAa,CACX,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,aAAa,CACX,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,IAAI,CACF,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;IAIrB,OAAO,CACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,cAAc,GACpB,kBAAkB;CAGtB;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,8 +1,10 @@
1
- /// <reference types="memoizee" />
2
1
  import { GridColor, GridColorWay, GridTheme, NullableGridColor } from './GridTheme';
3
2
  import GridModel from './GridModel';
4
3
  import GridRange from './GridRange';
5
4
  import GridMetrics, { BoxCoordinates, Coordinate, VisibleIndex } from './GridMetrics';
5
+ import type { GridSeparator } from './mouse-handlers/GridSeparatorMouseHandler';
6
+ import { DraggingColumn } from './mouse-handlers/GridColumnMoveMouseHandler';
7
+ import { BoundedAxisRange } from './GridAxisRange';
6
8
  export declare type EditingCellTextSelectionRange = [start: number, end: number];
7
9
  export declare type EditingCell = {
8
10
  column: VisibleIndex;
@@ -25,12 +27,11 @@ export declare type GridRenderState = {
25
27
  cursorColumn: VisibleIndex | null;
26
28
  cursorRow: VisibleIndex | null;
27
29
  selectedRanges: GridRange[];
28
- draggingColumn: VisibleIndex | null;
29
- draggingColumnOffset: number | null;
30
- draggingColumnSeparator: VisibleIndex | null;
30
+ draggingColumn: DraggingColumn | null;
31
+ draggingColumnSeparator: GridSeparator | null;
31
32
  draggingRow: VisibleIndex | null;
32
33
  draggingRowOffset: number | null;
33
- draggingRowSeparator: VisibleIndex | null;
34
+ draggingRowSeparator: GridSeparator | null;
34
35
  editingCell: EditingCell | null;
35
36
  isDraggingHorizontalScrollBar: boolean;
36
37
  isDraggingVerticalScrollBar: boolean;
@@ -128,7 +129,33 @@ export declare class GridRenderer {
128
129
  drawHeaders(context: CanvasRenderingContext2D, state: GridRenderState): void;
129
130
  drawFooters(context: CanvasRenderingContext2D, state: GridRenderState): void;
130
131
  drawColumnHeaders(context: CanvasRenderingContext2D, state: GridRenderState): void;
131
- drawColumnHeader(context: CanvasRenderingContext2D, state: GridRenderState, column: VisibleIndex, columnX: Coordinate, columnWidth: number): void;
132
+ drawColumnHeadersForRange(context: CanvasRenderingContext2D, state: GridRenderState, range: BoundedAxisRange, bounds: {
133
+ minX: number;
134
+ maxX: number;
135
+ }): void;
136
+ drawColumnHeadersAtDepth(context: CanvasRenderingContext2D, state: GridRenderState, range: BoundedAxisRange, bounds: {
137
+ minX: number;
138
+ maxX: number;
139
+ }, depth: number): void;
140
+ /**
141
+ * Draws the column header for the given visible index
142
+ * @param context Canvas context
143
+ * @param state Grid render state
144
+ * @param index Visible index of the column header to draw
145
+ * @param bounds The horizontal bounds the header can be drawn in
146
+ */
147
+ drawColumnHeaderAtIndex(context: CanvasRenderingContext2D, state: GridRenderState, index: VisibleIndex, bounds: {
148
+ minX: number;
149
+ maxX: number;
150
+ }): void;
151
+ drawColumnHeader(context: CanvasRenderingContext2D, state: GridRenderState, columnText: string, columnX: Coordinate, columnWidth: number, style?: {
152
+ backgroundColor?: string;
153
+ textColor?: string;
154
+ separatorColor?: string;
155
+ }, bounds?: {
156
+ minX?: number;
157
+ maxX?: number;
158
+ }): void;
132
159
  drawRowHeaders(context: CanvasRenderingContext2D, state: GridRenderState): void;
133
160
  drawRowHeader(context: CanvasRenderingContext2D, state: GridRenderState, row: VisibleIndex, rowY: Coordinate, rowHeight: number): void;
134
161
  drawRowFooters(context: CanvasRenderingContext2D, state: GridRenderState): void;
@@ -1 +1 @@
1
- {"version":3,"file":"GridRenderer.d.ts","sourceRoot":"","sources":["../src/GridRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GridRenderer.d.ts","sourceRoot":"","sources":["../src/GridRenderer.ts"],"names":[],"mappings":"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"}