File tree Expand file tree Collapse file tree 4 files changed +35
-2
lines changed Expand file tree Collapse file tree 4 files changed +35
-2
lines changed Original file line number Diff line number Diff line change 11
11
12
12
<Class name =" DeepSee.LightPivotTable" >
13
13
<Super >%DeepSee.Component.Portlet.abstractPortlet</Super >
14
- <TimeChanged >63700,68026.762239 </TimeChanged >
14
+ <TimeChanged >63749,65155.748273 </TimeChanged >
15
15
<TimeCreated >63515,61322.546099</TimeCreated >
16
16
17
17
<Parameter name =" INCLUDEFILES" >
151
151
]]> </Implementation >
152
152
</Method >
153
153
154
+ <Method name =" registerLPTOnCreateCallback" >
155
+ <Description >
156
+ Call this method when widget is created to handle moment when pivot table will be created.
157
+ If LPT has been created before, method fires given callback immidiately.</Description >
158
+ <FormalSpec >callback</FormalSpec >
159
+ <Language >javascript</Language >
160
+ <ClientMethod >1</ClientMethod >
161
+ <Implementation ><![CDATA[
162
+ if (typeof callback !== "function") return;
163
+ if (this.LightPivotTable) callback(this.LightPivotTable);
164
+ else this._registeredLPTOnCreateCallback = callback;
165
+ ]]> </Implementation >
166
+ </Method >
167
+
154
168
<Method name =" InitLPT" >
155
169
<Language >javascript</Language >
156
170
<ClientMethod >1</ClientMethod >
301
315
}
302
316
303
317
_.LightPivotTable = new LightPivotTable(setup);
318
+ if (this._registeredLPTOnCreateCallback) this._registeredLPTOnCreateCallback(_.LightPivotTable);
304
319
305
320
// hack to enable some change events
306
321
setTimeout(function () { _._INITIALIZED = true; }, 800);
Original file line number Diff line number Diff line change 1
1
{
2
2
"name" : " LightPivotTable" ,
3
3
"author" : " ZitRo" ,
4
- "version" : " 1.2.8 " ,
4
+ "version" : " 1.2.11 " ,
5
5
"description" : " A lightweight pivot table for MDX2JSON source for InterSystems Cache" ,
6
6
"main" : " test/testServer.js" ,
7
7
"repository" : {
Original file line number Diff line number Diff line change @@ -90,6 +90,7 @@ lp.updateSizes(); // recalculate pivot sizes
90
90
lp .changeBasicMDX (" ..." ); // change mdx for LPT
91
91
lp .getActualMDX (); // returns currently displayed MDX
92
92
lp .getSelectedRows (); // returns array with selected rows indexes. First row have index 1.
93
+ lp .attachTrigger (" contentRendered" , function () { }); // attaches trigger during runtime
93
94
```
94
95
95
96
#### Caché DeepSee
@@ -99,6 +100,10 @@ build/LightPivotTable.xml</code> into namespace you want. Make sure that MDX2JSO
99
100
installed and configured. Also you may need to change the widget property "MDX2JSON source" to make
100
101
it work with another MDX2JSON source.
101
102
103
+ You can obtain LPT instance from widget by calling widgetInstance.registerLPTOnCreateCallback method.
104
+ This method takes one argument - anonymous function, which will be executed when LPT instance is created.
105
+ The anonymous function takes one argument - LPT instance.
106
+
102
107
## Build
103
108
104
109
You need [ NodeJS] ( http://nodejs.org/ ) platform to be installed in your system to perform any build
Original file line number Diff line number Diff line change @@ -304,6 +304,19 @@ LightPivotTable.prototype.getPivotProperty = function (path) {
304
304
return obj ;
305
305
} ;
306
306
307
+ /**
308
+ * Attaches the trigger during the runtime.
309
+ * @param {string } triggerName
310
+ * @param {function } trigger
311
+ */
312
+ LightPivotTable . prototype . attachTrigger = function ( triggerName , trigger ) {
313
+ if ( typeof trigger !== "function" ) {
314
+ console . warn ( "LPT.addTrigger: pass the trigger as a second argument." ) ;
315
+ return ;
316
+ }
317
+ this . CONFIG . triggers [ triggerName ] = trigger ;
318
+ } ;
319
+
307
320
/**
308
321
* Fill up to normal config structure to avoid additional checks and issues.
309
322
*
You can’t perform that action at this time.
0 commit comments