Convert GtkTreeView in status editor to GtkColumnView
Review Request #2199 — Created Jan. 17, 2023 and submitted
There is a (big or small, up to you) hack in this implementation:
PidginSavedStatusis a boxed type and so cannot be placed in a
GListModel. Thus the model uses a dummy
GObjectinstance for each row that works similar to each
GtkTreeModelrow. This is annoying, but means the rest of the
.uiremains similar to how it would be with a non-boxed type.
Compared to before, this is only missing search.
Like the account manager, we might want to redesign this entirely, but this is just a straight move away from
GtkTreeViewdue to its impending deprecation. Also, now I have some idea how
GtkColumnViewworks at least.
Double-clicked a few saved statuses to confirm the editor dialogs opened, then clicked Modify to confirm that it opened the existing editor dialog.
Added a new saved status and confirmed that they were in the view.
Deleted a saved status and confirmed it was no longer in the view.
Closed the manager window with editor dialogs opened and confirmed all the editor dialogs closed as they used to.
Confirmed that Remove button was disabled when selecting an in-use status.
Clicked the column headers and confirmed that the statuses were sorted by them.
We determined we don't need to set object if this the parent widget we're defining correct?
objectin signal connections.
Revision 2 (+426 -272)