[gnome-packagekit/glib2: 4/79] moo
- From: Richard Hughes <rhughes src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnome-packagekit/glib2: 4/79] moo
- Date: Tue, 6 Oct 2009 09:45:24 +0000 (UTC)
commit 04e5f8196ceca7f852de9e6383f404ee9375e5af
Author: Richard Hughes <richard hughsie com>
Date: Wed Sep 9 17:32:51 2009 +0100
moo
src/Makefile.am | 1 -
src/gpk-application.c | 4 +-
src/gpk-backend-status.c | 184 ++++++++++++++++++++++++----------------------
src/gpk-check-update.c | 2 +-
src/gpk-dbus-task.c | 6 +-
src/gpk-firmware.c | 2 +-
src/gpk-log.c | 2 +-
src/gpk-watch.c | 4 +-
8 files changed, 107 insertions(+), 98 deletions(-)
---
diff --git a/src/Makefile.am b/src/Makefile.am
index fb6624a..c136ea6 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -264,7 +264,6 @@ gpk_backend_status_SOURCES = \
$(NULL)
gpk_backend_status_LDADD = \
- libgpkshared.a \
$(shared_LIBS) \
$(NULL)
diff --git a/src/gpk-application.c b/src/gpk-application.c
index b491b95..80d0941 100644
--- a/src/gpk-application.c
+++ b/src/gpk-application.c
@@ -3363,7 +3363,7 @@ gpk_application_categories_finished (GpkApplication *application)
}
for (i=0; i < list->len; i++) {
- obj = pk_obj_list_index (list, i);
+ obj = g_ptr_array_index (list, i);
gtk_tree_store_append (application->priv->groups_store, &iter, NULL);
gtk_tree_store_set (application->priv->groups_store, &iter,
@@ -3376,7 +3376,7 @@ gpk_application_categories_finished (GpkApplication *application)
j = 0;
do {
/* only allows groups two layers deep */
- obj2 = pk_obj_list_index (list, j);
+ obj2 = g_ptr_array_index (list, j);
if (g_strcmp0 (obj2->parent_id, obj->cat_id) == 0) {
gtk_tree_store_append (application->priv->groups_store, &iter2, &iter);
gtk_tree_store_set (application->priv->groups_store, &iter2,
diff --git a/src/gpk-backend-status.c b/src/gpk-backend-status.c
index dc0de24..60863c1 100644
--- a/src/gpk-backend-status.c
+++ b/src/gpk-backend-status.c
@@ -21,14 +21,9 @@
#include "config.h"
-//#include <errno.h>
#include <locale.h>
-//#include <string.h>
-//#include <unistd.h>
#include <stdlib.h>
-//#include <glib.h>
#include <glib/gi18n.h>
-//#include <dbus/dbus-glib.h>
#include <gtk/gtk.h>
#include <packagekit-glib2/packagekit.h>
@@ -36,6 +31,8 @@
#include "gpk-common.h"
+static GtkBuilder *builder = NULL;
+
/**
* pk_updates_close_cb:
**/
@@ -58,68 +55,26 @@ pk_updates_delete_event_cb (GtkWidget *widget, GdkEvent *event, gpointer data)
return FALSE;
}
-/**
- * main:
- **/
-int
-main (int argc, char *argv[])
+static void
+pk_control_test_get_properties_cb (GObject *object, GAsyncResult *res, GMainLoop *loop)
{
- GMainLoop *loop;
- gboolean verbose = FALSE;
- gboolean program_version = FALSE;
- GOptionContext *context;
GtkWidget *widget;
- GtkBuilder *builder;
- gchar *name;
- gchar *author;
- PkRoleEnum roles;
- PkBitfield filters;
- PkControl *control;
- gboolean ret;
- guint retval;
GError *error = NULL;
+ PkControl *control = PK_CONTROL(object);
+ gboolean ret;
+ PkBitfield filters;
+ PkBitfield roles;
+ gchar *name = NULL;
+ gchar *author = NULL;
- const GOptionEntry options[] = {
- { "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose,
- _("Show extra debugging information"), NULL },
- { "version", '\0', 0, G_OPTION_ARG_NONE, &program_version,
- _("Show the program version and exit"), NULL },
- { NULL}
- };
-
- setlocale (LC_ALL, "");
-
- bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
- bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- textdomain (GETTEXT_PACKAGE);
-
- if (! g_thread_supported ()) {
- g_thread_init (NULL);
- }
- g_type_init ();
-
- context = g_option_context_new (NULL);
- g_option_context_set_summary (context, _("PackageKit Backend Details Viewer"));
- g_option_context_add_main_entries (context, options, NULL);
- g_option_context_parse (context, &argc, &argv, NULL);
- g_option_context_free (context);
-
- if (program_version) {
- g_print (VERSION "\n");
- return 0;
- }
-
- egg_debug_init (verbose);
- gtk_init (&argc, &argv);
-
- loop = g_main_loop_new (NULL, FALSE);
-
- control = pk_control_new ();
- ret = pk_control_get_properties_sync (control, &error);
+ /* get the result */
+ ret = pk_control_get_properties_finish (control, res, &error);
if (!ret) {
/* TRANSLATORS: backend is broken, and won't tell us what it supports */
- egg_warning (_("Exiting as backend details could not be retrieved"));
- return 1;
+ g_print ("%s: %s\n", _("Exiting as backend details could not be retrieved"), error->message);
+ g_error_free (error);
+ g_main_loop_quit (loop);
+ goto out;
}
/* get values */
@@ -130,27 +85,7 @@ main (int argc, char *argv[])
"backend-author", &author,
NULL);
- /* get UI */
- builder = gtk_builder_new ();
- retval = gtk_builder_add_from_file (builder, GPK_DATA "/gpk-backend-status.ui", &error);
- if (error != NULL) {
- egg_warning ("failed to load ui: %s", error->message);
- g_error_free (error);
- goto out_build;
- }
-
- widget = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_backend"));
- gtk_window_set_icon_name (GTK_WINDOW (widget), GPK_ICON_SOFTWARE_LOG);
-
- widget = GTK_WIDGET (gtk_builder_get_object (builder, "button_close"));
- g_signal_connect (widget, "clicked",
- G_CALLBACK (pk_updates_close_cb), loop);
-
- widget = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_backend"));
- g_signal_connect (widget, "delete_event",
- G_CALLBACK (pk_updates_delete_event_cb), loop);
- gtk_widget_show (GTK_WIDGET (widget));
-
+ /* setup GUI */
widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_name"));
gtk_label_set_label (GTK_LABEL (widget), name);
widget = GTK_WIDGET (gtk_builder_get_object (builder, "label_author"));
@@ -281,16 +216,91 @@ main (int argc, char *argv[])
widget = GTK_WIDGET (gtk_builder_get_object (builder, "image_newest"));
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
-
-out_build:
+out:
g_free (name);
g_free (author);
+ return;
+}
- g_object_unref (builder);
- g_object_unref (control);
+/**
+ * main:
+ **/
+int
+main (int argc, char *argv[])
+{
+ GMainLoop *loop;
+ gboolean verbose = FALSE;
+ gboolean program_version = FALSE;
+ GOptionContext *context;
+ GtkWidget *widget;
+ PkControl *control;
+ guint retval;
+ GError *error = NULL;
+ const GOptionEntry options[] = {
+ { "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose,
+ _("Show extra debugging information"), NULL },
+ { "version", '\0', 0, G_OPTION_ARG_NONE, &program_version,
+ _("Show the program version and exit"), NULL },
+ { NULL}
+ };
+
+ setlocale (LC_ALL, "");
+
+ bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
+ bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
+ textdomain (GETTEXT_PACKAGE);
+
+ if (! g_thread_supported ())
+ g_thread_init (NULL);
+ g_type_init ();
+
+ context = g_option_context_new (NULL);
+ g_option_context_set_summary (context, _("PackageKit Backend Details Viewer"));
+ g_option_context_add_main_entries (context, options, NULL);
+ g_option_context_parse (context, &argc, &argv, NULL);
+ g_option_context_free (context);
+
+ if (program_version) {
+ g_print (VERSION "\n");
+ return 0;
+ }
+
+ egg_debug_init (verbose);
+ gtk_init (&argc, &argv);
+
+ loop = g_main_loop_new (NULL, FALSE);
+ control = pk_control_new ();
+
+ /* get UI */
+ builder = gtk_builder_new ();
+ retval = gtk_builder_add_from_file (builder, GPK_DATA "/gpk-backend-status.ui", &error);
+ if (retval == 0) {
+ egg_warning ("failed to load ui: %s", error->message);
+ g_error_free (error);
+ goto out;
+ }
+
+ widget = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_backend"));
+ gtk_window_set_icon_name (GTK_WINDOW (widget), GPK_ICON_SOFTWARE_LOG);
+
+ widget = GTK_WIDGET (gtk_builder_get_object (builder, "button_close"));
+ g_signal_connect (widget, "clicked",
+ G_CALLBACK (pk_updates_close_cb), loop);
+
+ widget = GTK_WIDGET (gtk_builder_get_object (builder, "dialog_backend"));
+ g_signal_connect (widget, "delete_event",
+ G_CALLBACK (pk_updates_delete_event_cb), loop);
+ gtk_widget_show (GTK_WIDGET (widget));
+
+ /* get properties */
+ pk_control_get_properties_async (control, NULL, (GAsyncReadyCallback) pk_control_test_get_properties_cb, loop);
+
+ /* wait for results */
g_main_loop_run (loop);
+out:
+ g_object_unref (builder);
+ g_object_unref (control);
g_main_loop_unref (loop);
-
return 0;
}
diff --git a/src/gpk-check-update.c b/src/gpk-check-update.c
index e63d766..e14aeb2 100644
--- a/src/gpk-check-update.c
+++ b/src/gpk-check-update.c
@@ -1120,7 +1120,7 @@ gpk_check_update_process_distro_upgrades (GpkCheckUpdate *cupdate, PkObjList *ar
/* find the upgrade string */
string = g_string_new ("");
for (i=0; i < array->len; i++) {
- obj = (PkDistroUpgradeObj *) pk_obj_list_index (array, i);
+ obj = (PkDistroUpgradeObj *) g_ptr_array_index (array, i);
g_string_append_printf (string, "%s (%s)\n", obj->name, pk_distro_upgrade_enum_to_text (obj->state));
}
if (string->len != 0)
diff --git a/src/gpk-dbus-task.c b/src/gpk-dbus-task.c
index a94db71..f854f4d 100644
--- a/src/gpk-dbus-task.c
+++ b/src/gpk-dbus-task.c
@@ -899,7 +899,7 @@ skip_checks:
/* filter out installed */
for (i=0; i<PK_OBJ_LIST(list)->len; i++) {
- obj = pk_obj_list_index (PK_OBJ_LIST (list), i);
+ obj = g_ptr_array_index (PK_OBJ_LIST (list), i);
if (obj->info_enum != PK_INFO_ENUM_INSTALLING) {
pk_obj_list_remove_index (PK_OBJ_LIST (list), i);
i--;
@@ -2508,7 +2508,7 @@ skip_checks:
dbus_g_method_return_error (task->priv->context, error);
goto out;
}
- pk_obj_list_add (PK_OBJ_LIST(list), obj_new);
+ g_ptr_array_add (PK_OBJ_LIST(list), obj_new);
pk_package_obj_free (obj_new);
g_strfreev (parts);
}
@@ -2890,7 +2890,7 @@ skip_checks:
/* add to main list */
list_tmp = pk_client_get_package_list (task->priv->client_primary);
- pk_obj_list_add_list (PK_OBJ_LIST (list), PK_OBJ_LIST (list_tmp));
+ g_ptr_array_add_list (PK_OBJ_LIST (list), PK_OBJ_LIST (list_tmp));
g_object_unref (list_tmp);
}
diff --git a/src/gpk-firmware.c b/src/gpk-firmware.c
index 00d49eb..270f74b 100644
--- a/src/gpk-firmware.c
+++ b/src/gpk-firmware.c
@@ -394,7 +394,7 @@ gpk_firmware_timeout_cb (gpointer data)
/* save to new array if we found one package for this file */
obj = gpk_firmware_check_available (firmware, req->filename);
if (obj != NULL) {
- pk_obj_list_add (PK_OBJ_LIST (firmware->priv->packages_found), obj);
+ g_ptr_array_add (PK_OBJ_LIST (firmware->priv->packages_found), obj);
pk_package_obj_free (obj);
}
}
diff --git a/src/gpk-log.c b/src/gpk-log.c
index de44055..e155187 100644
--- a/src/gpk-log.c
+++ b/src/gpk-log.c
@@ -544,7 +544,7 @@ gpk_log_refilter (void)
/* go through the list, adding and removing the items as required */
for (i=0; i<transactions->len; i++) {
- obj = pk_obj_list_index (transactions, i);
+ obj = g_ptr_array_index (transactions, i);
ret = gpk_log_filter (obj);
if (ret)
gpk_log_add_obj (obj);
diff --git a/src/gpk-watch.c b/src/gpk-watch.c
index bd66e48..1b23fdc 100644
--- a/src/gpk-watch.c
+++ b/src/gpk-watch.c
@@ -478,7 +478,7 @@ gpk_watch_task_list_finished_cb (PkTaskList *tlist, PkClient *client, PkExitEnum
goto no_data;
}
for (i=0; i<array->len; i++) {
- obj = pk_obj_list_index (array, i);
+ obj = g_ptr_array_index (array, i);
/* is a lesser restart that what we have already */
if (obj->restart != restart)
@@ -487,7 +487,7 @@ gpk_watch_task_list_finished_cb (PkTaskList *tlist, PkClient *client, PkExitEnum
/* is already in the list */
ret = FALSE;
for (j=0; j<array->len; j++) {
- obj_tmp = pk_obj_list_index (array, j);
+ obj_tmp = g_ptr_array_index (array, j);
if (g_strcmp0 (obj_tmp->id->name, obj->package_id->namexxxneedtosplitxxx) == 0) {
ret = TRUE;
break;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]