[GtkApplication] Add gtk_application_get_windows()

Closes #623598.
This commit is contained in:
Jonh Wendell 2010-07-05 10:05:48 -03:00
parent 34e8bd9dba
commit 9125ccb1cb
3 changed files with 36 additions and 12 deletions

View File

@ -265,6 +265,7 @@ gtk_application_new
gtk_application_set_action_group
gtk_application_create_window
gtk_application_get_window
gtk_application_get_windows
gtk_application_add_window
gtk_application_run
gtk_application_quit

View File

@ -445,6 +445,28 @@ gtk_application_get_window (GtkApplication *app)
return gtk_application_create_window (app);
}
/**
* gtk_application_get_windows:
* @app: a #GtkApplication
*
* Retrieves the list of windows previously registered with
* gtk_application_create_window() or gtk_application_add_window().
*
* Return value: (element-type GtkWindow) (transfer none): A pointer
* to the list of #GtkWindow<!-- -->s registered by this application,
* or %NULL. The returned #GSList is owned by the #GtkApplication
* and it should not be modified or freed directly.
*
* Since: 3.0
*/
G_CONST_RETURN GSList *
gtk_application_get_windows (GtkApplication *app)
{
g_return_val_if_fail (GTK_IS_APPLICATION (app), NULL);
return app->priv->windows;
}
/**
* gtk_application_create_window:
* @app: a #GtkApplication

View File

@ -87,18 +87,19 @@ struct _GtkApplicationClass
void (*_gtk_reserved10) (void);
};
GType gtk_application_get_type (void) G_GNUC_CONST;
GtkApplication* gtk_application_new (const gchar *appid,
gint *argc,
gchar ***argv);
void gtk_application_set_action_group (GtkApplication *app,
GtkActionGroup *group);
GtkWindow * gtk_application_create_window (GtkApplication *app);
GtkWindow * gtk_application_get_window (GtkApplication *app);
void gtk_application_add_window (GtkApplication *app,
GtkWindow *window);
void gtk_application_run (GtkApplication *app);
void gtk_application_quit (GtkApplication *app);
GType gtk_application_get_type (void) G_GNUC_CONST;
GtkApplication* gtk_application_new (const gchar *appid,
gint *argc,
gchar ***argv);
void gtk_application_set_action_group (GtkApplication *app,
GtkActionGroup *group);
GtkWindow * gtk_application_create_window (GtkApplication *app);
GtkWindow * gtk_application_get_window (GtkApplication *app);
G_CONST_RETURN GSList * gtk_application_get_windows (GtkApplication *app);
void gtk_application_add_window (GtkApplication *app,
GtkWindow *window);
void gtk_application_run (GtkApplication *app);
void gtk_application_quit (GtkApplication *app);
G_END_DECLS