Setting globally defined defaults for certain table options - tabulator

I am curious to know if you could set a default global option for all tabulator tables. I want these options set on all tabulator tables throughout the application
ajaxLoaderLoading: "<div class='spinner'><div class='loading_circle'></div></div>",
placeHolder: "No Data Available",
My first thought was to use module extension but I don't believe that is a solution I am looking for. Ultimately I just want to avoid declaring the same default options for all tables. Any ideas or insight is appreciated, thanks!

The only way to do that would be to edit in Tabulator.js Library and hard code it, I wouldn't suggest doing that if other developer updates it your code will break.
You can set a global string for
"<div class='spinner'><div> class='loading_circle'></div></div>"
and "No Data Available" use it everywhere you initialize Tabulator

wrap your call to Tabulator in a function or a custom class and just instantiate your custom code with a config object that can extend/override your default settings object.

Related

How to know if Tabulator table row is expanded?

How can I determine if a tree row in Tabulator is expanded or collapsed? I'm using version 4.9, the current. The best I could come up was digging into the implementation details:
row._row.modules.dataTree.open
But I'd prefer something using only the documented API. The best I could come up with was:
row.getNextRow().getTreeParent() === row
// (With special handling when getNextRow() is false)
I don't think there is currently a built-in method to check expanded state. You could row.getElement() and manually check for the dataTreeCollapseElement. You can also create a Github Issue to suggest the addition of one.
You are right to avoid referencing _row, as any properties beginning with an underscore are to be treated as private properties. These are undocumented and could change at any time, and aren't meant to be referenced outside Tabulator's source code.

Flexible column layout does not work when Two Way binding

My app has a flexible column layout with the list report displayed initially, and then switch to two columns when I click on an entry in the list report. This works fine so far with one way binding with backend model. But when I switch to two way binding then the click on entry does not show the second column. I am using the following code to switch the layout to two-column.
this.byId("flexibleColumnLayout").setLayout(sLayout);
Inside the setLayout() , I see some code that speaks about two-way binding. I am not an expert though to understand that level.
Anyone has fixed such an encounter? Appreciate your help. Thanks...
this.byId("flexibleColumnLayout").setLayout(sLayout);
This is resovled. The setLayout method is triggering some code where is going through some two way binding check and did try property binding checking against backend model, which is not correct. Instead binding the control to local json model did work. Thank you all!

How to get data from custom properties in UITestPropertyProvider

According to the code sample on MSDN (http://msdn.microsoft.com/en-us/library/hh552522.aspx) any custom property data that you need to get out of your control should be in a semicolon delimited string in the AccessibleObject's Description property. This does not seem right to me at all. This seems like just a quick and dirty trick to get it working. What is the correct way to get the value of properties from custom controls? And if this actually is how you're supposed to do it, then how are you supposed to set those properties using the SetPropertyValue method? The example in the link above just throws a NotImplementedException in SetPropertyValue.
Since the IAccessible interface has only a limited number of properties the best solution is to cram any extra information into the Description property (that's what they do at the company I work at, and our developers don't work quick and dirty :) ). To modify the return value of this property you have to implement the Iaccessible interface on your control. Or, since you only want to modify the Description property you only need to modify that property and leave the rest to the proxy (I'm not sure how this works exactly but there are tutorials for it on MSDN).
The SetPropertyValue method in the UITestPropertyProvider is for the UItestControls. By overwriting it you can modify the way CUIT interacts with the control during playback. For example, if you overwrite SetPropertyValue for the Text property you can change the way CUIT types strings into the control.

Orchard Module Override a Field Driver

Hello fellow Orcharders!
I'm not sure if what I want to do is possible, but I want to override the Driver for a single Field in the Module I'm writing.
The Field I want more control over is the Content Picker field. Basically I want the Content Picker to load the shapes for their respective content items. I've looked at Sipke's Content Picker Widget for an example on how to load shapes, however I'm unsure of the best/recommended approach to implement something similar in my module.
I have the Content Picker Field attached to my Content Part, and the default Content Picker comma list of Content Item titles appears as expected. I have tried to define an Alternate in Placement.info, but I can't load the Content Item shapes from within the Alternate view.
Presumably, as per Sipke's example, these shapes need to be built in the Driver and passed along. If this is correct thing to do, how could I do this in the most Orchard-y way with minimal "hacks". Looking into the debugger, I could "hack" my way to the Field I need in my part's Driver; but the module I'm building will be reused in the future by people unfamiliar with it, and if they start adding/deleting Fields from the Content Part, I'd like everything to behave accordingly!
Of course, if I must take the "hacky" option, I'm willing to do so, but only after I've exhausted all other options. This is my first module, and I've learnt an incredible amount along the way, and I'm really trying to learn the "right" way to build an Orchard Module as best I can.
Thanks in advance!

Rad grid custom filtering

How can I activate custom filtering for my radgrid?(I googled but I didn't get any proper response regarding this)
I have a property like AllowCustomSorting but I don't have any property regarding filtering.
Can any one provide the way how to implement custom filtering?
If possbile give me a sample page then I will understand.
Thanks in advance.
All you need to know about filtering:
http://www.telerik.com/help/aspnet-ajax/grid-basic-filtering.html
I usually do my filtering/sorting within my stored procedures as that brings huge speed benefits when working with larger tables.
I'm aware this is a fairly old question now but this link should help you:
Note that it has a sample project at the bottom of the page.
The property you are looking for is AllowFilteringByColumn="True"
This page has a sample using a dropdown and a custom filter.

Resources