GsAppList

GsAppList — An application list

Stability Level

Unstable, unless otherwise indicated

Functions

Types and Values

Includes

#include <gnome-software.h>

Description

These functions provide a refcounted list of GsApp objects.

Functions

GsAppListSortFunc ()

gboolean
(*GsAppListSortFunc) (GsApp *app1,
                      GsApp *app2,
                      gpointer user_data);

GsAppListFilterFunc ()

gboolean
(*GsAppListFilterFunc) (GsApp *app,
                        gpointer user_data);

gs_app_list_new ()

GsAppList *
gs_app_list_new (void);

Creates a new list.

Returns

A newly allocated GsAppList

Since: 3.22


gs_app_list_add ()

void
gs_app_list_add (GsAppList *list,
                 GsApp *app);

If the application does not already exist in the list then it is added, incrementing the reference count. If the application already exists then a warning is printed to the console.

Applications that have the application ID lazy-loaded will always be addded to the list, and to clean these up the plugin loader will also call the gs_app_list_filter_duplicates() method when all plugins have run.

Parameters

list

A GsAppList

 

app

A GsApp

 

Since: 3.22


gs_app_list_add_list ()

void
gs_app_list_add_list (GsAppList *list,
                      GsAppList *donor);

Adds all the applications in donor to list .

Parameters

list

A GsAppList

 

donor

Another GsAppList

 

Since: 3.22


gs_app_list_remove ()

void
gs_app_list_remove (GsAppList *list,
                    GsApp *app);

Removes an application from the list. If the application does not exist the request is ignored.

Parameters

list

A GsAppList

 

app

A GsApp

 

Since: 3.22


gs_app_list_index ()

GsApp *
gs_app_list_index (GsAppList *list,
                   guint idx);

Gets an application at a specific position in the list.

Parameters

list

A GsAppList

 

idx

An index into the list

 

Returns

a GsApp, or NULL if invalid.

[transfer none]

Since: 3.22


gs_app_list_lookup ()

GsApp *
gs_app_list_lookup (GsAppList *list,
                    const gchar *unique_id);

Finds the first matching application in the list using the usual wildcard rules allowed in unique_ids.

Parameters

list

A GsAppList

 

unique_id

A unique_id

 

Returns

a GsApp, or NULL if not found.

[transfer none]

Since: 3.22


gs_app_list_length ()

guint
gs_app_list_length (GsAppList *list);

Gets the length of the application list.

Parameters

list

A GsAppList

 

Returns

Integer

Since: 3.22


gs_app_list_sort ()

void
gs_app_list_sort (GsAppList *list,
                  GsAppListSortFunc func,
                  gpointer user_data);

Sorts the application list.

Parameters

list

A GsAppList

 

func

A GCompareFunc

 

Since: 3.22


gs_app_list_filter ()

void
gs_app_list_filter (GsAppList *list,
                    GsAppListFilterFunc func,
                    gpointer user_data);

If func() returns TRUE for the GsApp, then the app is kept.

Parameters

list

A GsAppList

 

func

A GsAppListFilterFunc

 

user_data

the user pointer to pass to func

 

Since: 3.22

Types and Values

GS_TYPE_APP_LIST

#define GS_TYPE_APP_LIST (gs_app_list_get_type ())

GsAppList

typedef struct _GsAppList GsAppList;