Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

igxGrid Row edit #566

Closed
Eralmidia opened this issue Feb 9, 2018 · 25 comments
Closed

igxGrid Row edit #566

Eralmidia opened this issue Feb 9, 2018 · 25 comments
Labels
grid: general 🧰 feature-request ✅ status: resolved Applies to issues that have pending PRs resolving them, or PRs that have already merged.

Comments

@Eralmidia
Copy link

Description

I guess you may already be working on this, as it's possible in the old ig grid, but I would really like to see "row mode" in the igx-grid.

Result

Can only select / edit one cell at a time.

Expected result

Ability to select a row and show editors for all cells in the row at once when editing.

@SlavUI SlavUI self-assigned this Feb 12, 2018
@SlavUI
Copy link
Contributor

SlavUI commented Feb 12, 2018

@Eralmidia yes we have it planned and I will let you know once the feature is scheduled to be ready :)

@SlavUI SlavUI changed the title Row selection / edit igxGrid Row selection / edit Feb 21, 2018
@zdrawku zdrawku assigned Lipata and unassigned zdrawku Mar 26, 2018
@Eralmidia
Copy link
Author

I guess this can be closed, as it is handled in #812 ?

@Lipata
Copy link
Member

Lipata commented Apr 3, 2018

@Eralmidia this is not the same behavior as #812. The latter is related to selection, which is not quite the same as editing all the cells for one row at once, which will require additional logic and UI. If you select a row in #812 it as added to a selected collection, its style is changed, but the row does not enter edit mode. This will bе a future and a different implementation. Thank you!

@Eralmidia
Copy link
Author

Ah, yes, that makes sense. Thanks for the response. Any change this will make in into 5.4? It seems to me, that with the grid improvements coming in 5.3, this may be the last thing we need in order to start using this component in production.

@kdinev
Copy link
Member

kdinev commented Apr 3, 2018

@Eralmidia We're still considering whether editing should be performed cell-by-cell, or the whole row should be editable. The alternative we're considering is external form to edit the whole row, because we need to be handling data-dense scenarios with lots of columns (200+), in which case the whole grid is horizontally virtualized and row editing is out of the question.

@Eralmidia
Copy link
Author

Thanks for the input. I guess there are use cases for all of these options. An "excel-like" editing, a regular row editing and the form style for massive grids. If it is cell by cell, I do hope that you can include the option to have commit/cancel buttons for the row, to delay commit of data, even though the data is technically entered cell by cell. In the old grid, we are exclusively using row editing in all grids. I'd imagine this would be the most common generally, for all kinds of entities. Users, roles ect.

@Eralmidia
Copy link
Author

Any chance this will be a part of milestone 3?

@kdinev
Copy link
Member

kdinev commented Apr 30, 2018

@Eralmidia We've still not gotten to discussing and designing the row editing pattern. There's a very slim chance that this will make it in for June. We may get some progress on the design though.

May I edit the issue title to be only row edit, because the row selection is done as per #812?

@Eralmidia
Copy link
Author

@kdinev Ok, keep me posted. There are only a small number of tables we can implement the igx grid at currently, without any editing features.

Changing the title seems logical, yes :)

@kdinev kdinev changed the title igxGrid Row selection / edit igxGrid Row edit Apr 30, 2018
@kdinev
Copy link
Member

kdinev commented May 28, 2018

@Eralmidia We're working on enhancing the cell editing behavior and introducing row editing with that.

https://github.com/IgniteUI/igniteui-angular/wiki/Cell-Editing

Take a look at the Tab key behavior - the cells will be in edit mode one at a time, but Tab moves horizontally in the row, putting the next editable cell in edit mode. Let us know what you think!

@Eralmidia
Copy link
Author

Eralmidia commented May 29, 2018

Yes, I think that continuing down the path of cell editing is logical from a technical perspective. What I'm wondering, is whether there will be a layer of "row logic" on top of the cell editing?

In the old ig grids, we have row mode, which edits the whole row, and then commit with a done/cancel button. For instance, if you have a grid of users, we would like to commit the changes for a User model to the server as a whole, not one API call for edit of email, one for username ect.

So maybe there could be something in the grid containing the edit state of the row, and delay the commit for the whole row until confirmed by the user (done/cancel), even though the row technically are edited on a per cell basis?

@kdinev
Copy link
Member

kdinev commented Jun 13, 2018

@Eralmidia I apologize for delay to respond to your question. You probably see that there's a lot of features that we're pushing at the moment, so I was busy with the other ones.

It's very hard for us to do a design where we spawn all the editors simultaneously, with done and cancel buttons, like in the classic Ignite UI igGrid. The most difficult part would be virtually scrolling the grid horizontally and spawning new editors. This is actually also not supported in the igGrid (horizontal virtualization and row editing). We may explore how to do this later this year.

Btw, once again I want to thank you for all the support and feedback you provide us with for this product!

@Eralmidia
Copy link
Author

Eralmidia commented Jun 14, 2018

Yes, I do understand the difficulties regarding the editors. What I was proposing was more in the lines of the following:

You edit a single cell at the time, so only one editor is shown at a time. But when a cell in the row is edited, mark the row as "dirty". Visually maybe as simple as a change of color of the row or something. Then show done and cancel buttons for the edited row. If done is pressed, emit an event for row edit, if cancel is pressed, roll back the changes done to all cells in the row. That was kinda what I meant by "adding some row logic" on top of what is essentially still cell editing. So essentially, the grid should be able to more or less work as in "cell mode", with the exception that you store edited values until done or canceled.

I don't know the inner workings of the grid of course, but it seems to me that it should be possible to use a single editor, but still give the user the feeling that they are editing a row.

No problem. Let me know if I become to nagging ;) In the end, I'm just trying to provide the best user experience for our customers, just like you do. Looking forward to the next release, especially to see the features of the combo/select component. Keep up the good work.

@kdinev
Copy link
Member

kdinev commented Jun 14, 2018

@Eralmidia You're not at all nagging.
@StefanIvanov @SDinev Can you take a look at the suggestion and see how we can implement a design for this?

@kdinev
Copy link
Member

kdinev commented Jun 26, 2018

@Eralmidia Do you mind if you give me your email address? You can send me a message at kdinev@infragistics.com or on twitter (at)KonstantinDinev

@Eralmidia
Copy link
Author

Sure, sent you a mail now :)

@SlavUI SlavUI assigned StefanIvanov and unassigned Lipata, rkaraivanov and SlavUI Jun 29, 2018
damyanpetev added a commit that referenced this issue Oct 22, 2018
bazal4o added a commit that referenced this issue Oct 29, 2018
feat(row-edit): add separate overlay template directives #566
@Lipata Lipata removed the 💥 status: in-test PRs currently being tested label Nov 7, 2018
@wnvko wnvko added the ✅ status: resolved Applies to issues that have pending PRs resolving them, or PRs that have already merged. label Feb 15, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
grid: general 🧰 feature-request ✅ status: resolved Applies to issues that have pending PRs resolving them, or PRs that have already merged.
Projects
None yet
Development

No branches or pull requests