feathersui / feathersui-openfl

Cross-platform graphical user interface components for creative frontend projects — powered by Haxe and OpenFL
https://feathersui.com/
Other
162 stars 17 forks source link

GridView, TreeGridView: add a way to set a row background skin that is under all cell renderers in a row #117

Closed joshtynjala closed 1 year ago

joshtynjala commented 2 years ago

Currently, the background skins for a row is composed from separate background skins in each cell renderer. There should be a way to set a single background skin that fills the entire row.

nadako commented 1 year ago

Probably related: it would also be nice to be able to react to mouse hovering for the rows to achieve this effect.

https://user-images.githubusercontent.com/49749/227150658-e861ae26-4344-43b0-9ab7-87b6bb7811fe.mp4

joshtynjala commented 1 year ago

@nadako It is worth mentioning that it is currently possible to highlight the entire row on mouse hover, even if the cell renderers have separate background skins.

There's an IPointerDelegate interface available. If a cell renderer implements this interface, the GridView will pass in the row as the pointerTarget for mouse/touch events.

The built-in ItemRenderer and LayoutGroupItemRenderer components both implement this interface. LayoutGroupItemRenderer is a good base class to use if you need to create a custom cell renderer.