hjalmers / angular-generic-table

A generic table for Angular 2+. Generic table uses standard markup for tables ie. table, tr and td elements etc. and has support for expanding rows, global search, filters, sorting, pagination, export to CSV, column clicks, custom column rendering, custom export values.
https://hjalmers.github.io/angular-generic-table/
MIT License
104 stars 55 forks source link

Enabled settings hide column #181

Closed thomasnisole closed 6 years ago

thomasnisole commented 6 years ago

Hey @hjalmers ,

I want an explanation about "enabled" settings. I want to disable a column re-order and column visibility in columns-settings plugin, so i initialize enabled with false value, the column-settings plugin hide the column, but the core hide the column to.

I look in your code, and the condition for show a column is to put visible at true AND enabled at true. Is it normal ?

Thanks in advance.

hjalmers commented 6 years ago

Yes @thomasnisole, the enable property in fields is something we had in the first version of generic-table for angularJS and the behavior is still the same. Since the configuration (the settings part which shouldn't contain any functions) can be loaded from a server to along with the data, it's possible to enable/disable entire columns just using configuration. Disabling a column is pretty much the same as removing the settings and field configuration altogether so I guess you're looking for something else for your use case. Are you just looking for a way to disable the ability toggle visibility and order when using the column-settings component?

thomasnisole commented 6 years ago

Yes, in fact i just want to "lock" settings of 3 columns (they contains action buttons with no column header text). I don't want user hide theses columns, or re-order.

hjalmers commented 6 years ago

When trying to describe the feature I figured that it might make sense to call it lockSettings as that's basically what we want to do, although it's not really locked. Your pull request and the changes will be available from v4.12.0 hopefully available later this week (I have one more feature I'd like to add first).