1) The column headers should be resized to take into account the button size. It looks a little weird when they obscure the text.
I will resize the column and update the code style.
2) It would be good to be able to select a subset of rows. The grid already supports this... I'd suggest that the header button should display only the row(s) that are currently selected. That would also allow the removal of the per-row buttons.
Thanks for your nice idea! This can be implemented without much change in the current code. I am wondering if it is intuitive enough for users to firstly select row(s) and then click the column header button. What do you think?
3) Can the panel be made into a regular dialogue, with a close button and ability to resize and move it?
Now the viewer can be resized by dragging the bottom right corner and it can't be moved. I tried adding frame but found it look not good(see the attached screenshot).
I finally got a chance to play with this! It's pretty awesome - I think some tweaks are needed to polish it off though:
1) The column headers should be resized to take into account the button size. It looks a little weird when they obscure the text.
2) It would be good to be able to select a subset of rows. The grid already supports this... I'd suggest that the header button should display only the row(s) that are currently selected. That would also allow the removal of the per-row buttons.
3) Can the panel be made into a regular dialogue, with a close button and ability to resize and move it?
I haven't looked at the code in any great depth due to time constraints, but I didn't see anything particularly untoward except some of the formatting; for example:
if(command === 'view-all-geometries'){ ... }else{
Should look more like:
if (command === 'view-all-geometries') { ... } else {
This is the patch for viewing geometry data in pgAdmin4. I have implemented it as follows:
Add cell button and column header button in datagrid for geometry and geography type data. [screenshot 1]
When user clicks the 'view' button, it parses the data and opens a map to show the geometry. [screenshot 2, 3, 4]
When user clicks the geometry in the map, it shows the properties. [screenshot 5]
I have created unit test for this. I have also created a test database[1] including geometries of different types to run test manually. Please review it. Thank you.