如何在 C 中将 GList 转换为 GListModel?

问题描述 投票:0回答:1

我正在开发一个用C编写的GTK程序。在特定函数

adw_combo_row_set_model ()
中,我需要提供一个
GListModel
。我有一个
GList
。如何将 GList 转换为 GListModel 或以其他方式提供与 GListModel 兼容的 GList 视图?

c glib
1个回答
0
投票

我需要提供一个

GListModel
。我有一个
GList
。如何将
GList
转换为
GListModel
或以其他方式提供与
GList
兼容的
GListModel
视图?

尽管“List”出现在两个名字中,但

GListModel
GList
并没有真正的关系。 没有直接转换。

您有两个主要选择:

  1. 选择

    GListModel
    的现有实现,例如
    GListStore
    ,实例化它,然后将
    GList
    的元素复制到其中。

  2. 编写您自己的

    GListModel
    实现,它包装
    GList
    并提供它的视图。

根据

GList
的来源以及您还需要用它做什么,您可能还有第二种选择,即始终使用
GListModel
。那么无需采取任何特殊行动即可获得。

© www.soinside.com 2019 - 2024. All rights reserved.