ParasolJS / parasol-es

ES6 module for interactive visualization of multi-objective optimization problems
https://parasoljs.github.io/
MIT License
26 stars 5 forks source link

Please include Slick.Controls in parasol.standalone.js #25

Closed scottbentley closed 5 years ago

scottbentley commented 5 years ago

I want to include the Slick.Controls.Pager control but it appears to be missing from the minified version in the parasol.standalone.js, that or I don't know what I'm doing which is likely ;)

I need the Pager control because currently Parasol doesn't load quickly with large data sets. The Parcoords instance is fine, but the SlickGrid is very slow to load because all records are being loaded. The Pager solves this issue. Take a look at the Parcoords examples to see how they use the Pager.

Also, IMO, Parasol should expose the SlickGrid more effectively. There needs to be a way to access the actual Slick library and the Grid and DataView objects created by Parasol so they can be extended at run time.

joshhjacobson commented 5 years ago

Hi Scott!

You're correct, the grid is not currently configured to incorporate the Pager. I can add this as an option in the attachGrid function (i.e. ps.attachGrid({..., pager=true})) and update the SlickGrid example to showcase it.

Moving forward, we'd definitely like to make the SlickGrid functionality more accessible, and we completely agree with you about exposing SlickGrid more effectively. Currently, you can use ps.grid and ps.dataview to access the SlickGrid objects directly, and with attachGrid you can pass column definitions and configuration options as follows:

ps.attachGrid({container, columns={}, options={} })

We haven't spent much time playing with the configuration yet, so let us know what you come up with and if you have any thoughts on how we might improve this interface.

Best, Josh

joshhjacobson commented 5 years ago

Hi again Scott,

Apologies for the long delay in getting back to this! I just went to add the pager feature to attachGrid and discovered that the SlickGrid package used to build Parasol never implemented the SlickGrid controls (see DimitarChristoff/slickgrid-es6#18), meaning this is not something Parasol can add for the time being.

In the future, there is a possibility of migrating Parasol's SlickGrid dependency to a more active repo where the controls are implemented, though I'm not sure how I feel about introducing AngularJS.

I'm going to close this issue for now, but please let us know if you have other questions / comments / suggestions!

Thanks, Josh