Hi everybody,
I've design question when using tools such Jetpack Compose.
Is it possible to have some "methods" on a GUI components? example ListGrid.selectRecord(), ListGrid.sortColumn(), ListGrid.hideColumn(), ListGrid.disableClicks()?
Or this is the same as React Redux and we can control components UI only thru explicit view state management? Or do you have some alternatives for this scenario?
Problem is that currently we need for simple list grid to create "View Object (for rendering)", "View Component/Controller (for managing state) with methods" have some state container, bind state container to View Object and to View Component, and do actions thru some action dispatchers aka reducers which do not have references to either View Object nor View Component. How to handle that if there is multiple list grids or many different objects.
I've largely used MVC / MVP / MVVM styles of GUI programming, and MVVM without two way binding was best available at time and now it's hard to understand how do you do programming when you do not have some reference-able graph of objects which can have a "methods".
Do you thought about this during Jetpack Compose design? Any recommended way to handle state (more focus on state of UI component, not the model state)?
(disclose: I personally dislike redux like designs where everything is completely separated and by that becomes hard to track what belongs to whom with custom made dynamic dispatch system which emulates OOP language method calls)