gnome-packagekit r129 - in trunk: data po src
- From: rhughes svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-packagekit r129 - in trunk: data po src
- Date: Wed, 26 Mar 2008 15:21:34 +0000 (GMT)
Author: rhughes
Date: Wed Mar 26 15:21:33 2008
New Revision: 129
URL: http://svn.gnome.org/viewvc/gnome-packagekit?rev=129&view=rev
Log:
from git
Added:
trunk/data/pk-install-file.glade
Modified:
trunk/data/Makefile.am
trunk/data/pk-backend-status.glade
trunk/data/pk-repo.glade
trunk/po/POTFILES.in
trunk/src/Makefile.am
trunk/src/pk-application-main.c
trunk/src/pk-application.c
trunk/src/pk-backend-status.c
trunk/src/pk-common-gui.c
trunk/src/pk-install-file.c
trunk/src/pk-repo.c
trunk/src/pk-transaction-viewer.c
trunk/src/pk-update-viewer.c
Modified: trunk/data/Makefile.am
==============================================================================
--- trunk/data/Makefile.am (original)
+++ trunk/data/Makefile.am Wed Mar 26 15:21:33 2008
@@ -34,6 +34,7 @@
pk-signature.glade \
pk-transactions.glade \
pk-backend-status.glade \
+ pk-install-file.glade \
$(NULL)
EXTRA_DIST = \
Modified: trunk/data/pk-backend-status.glade
==============================================================================
--- trunk/data/pk-backend-status.glade (original)
+++ trunk/data/pk-backend-status.glade Wed Mar 26 15:21:33 2008
@@ -35,24 +35,15 @@
<property name="n_columns">2</property>
<property name="column_spacing">5</property>
<property name="row_spacing">5</property>
- <property name="homogeneous">False</property>
<child>
- <widget class="GtkLabel" id="label19">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Backend Name:</property>
- </widget>
- <packing>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label20">
+ <widget class="GtkLabel" id="label_author">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Backend Author:</property>
+ <property name="label">Richard Hughes</property>
</widget>
<packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
@@ -73,20 +64,28 @@
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label_author">
+ <widget class="GtkLabel" id="label20">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label">Richard Hughes</property>
+ <property name="label" translatable="yes">Backend Author:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
+ <child>
+ <widget class="GtkLabel" id="label19">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Backend Name:</property>
+ </widget>
+ <packing>
+ <property name="y_options"></property>
+ </packing>
+ </child>
</widget>
</child>
</widget>
@@ -126,115 +125,109 @@
<property name="column_spacing">5</property>
<property name="row_spacing">5</property>
<child>
- <widget class="GtkLabel" id="label15">
+ <widget class="GtkLabel" id="label45">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Get Updates:</property>
+ <property name="label" translatable="yes">Resolve:</property>
</widget>
<packing>
+ <property name="top_attach">8</property>
+ <property name="bottom_attach">9</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label16">
+ <widget class="GtkImage" id="image_resolve">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Refresh Cache:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">8</property>
+ <property name="bottom_attach">9</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label17">
+ <widget class="GtkLabel" id="label37">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Update System:</property>
+ <property name="label" translatable="yes">Cancel </property>
</widget>
<packing>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_FILL</property>
+ <property name="top_attach">7</property>
+ <property name="bottom_attach">8</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label25">
+ <widget class="GtkImage" id="image_cancel">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Search Name:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">7</property>
+ <property name="bottom_attach">8</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label26">
+ <widget class="GtkImage" id="image_search_file">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Search Details:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">6</property>
+ <property name="bottom_attach">7</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label27">
+ <widget class="GtkImage" id="image_search_group">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Search Group:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
<property name="top_attach">5</property>
<property name="bottom_attach">6</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label28">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Search File:</property>
- </widget>
- <packing>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_get_updates">
+ <widget class="GtkImage" id="image_search_details">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ <property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_refresh_cache">
+ <widget class="GtkImage" id="image_search_name">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
@@ -254,109 +247,115 @@
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_search_name">
+ <widget class="GtkImage" id="image_refresh_cache">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_search_details">
+ <widget class="GtkImage" id="image_get_updates">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_search_group">
+ <widget class="GtkLabel" id="label28">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">SearchFile:</property>
+ </widget>
+ <packing>
+ <property name="top_attach">6</property>
+ <property name="bottom_attach">7</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label27">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">SearchGroup:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
<property name="top_attach">5</property>
<property name="bottom_attach">6</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_search_file">
+ <widget class="GtkLabel" id="label26">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">SearchDetails:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_cancel">
+ <widget class="GtkLabel" id="label25">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">SearchName:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">7</property>
- <property name="bottom_attach">8</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label37">
+ <widget class="GtkLabel" id="label17">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Cancel Transaction:</property>
+ <property name="label" translatable="yes">UpdateSystem:</property>
</widget>
<packing>
- <property name="top_attach">7</property>
- <property name="bottom_attach">8</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_resolve">
+ <widget class="GtkLabel" id="label16">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">RefreshCache:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">8</property>
- <property name="bottom_attach">9</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label45">
+ <widget class="GtkLabel" id="label15">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Resolve:</property>
+ <property name="label" translatable="yes">GetUpdates:</property>
</widget>
<packing>
- <property name="top_attach">8</property>
- <property name="bottom_attach">9</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
@@ -371,116 +370,109 @@
<property name="column_spacing">5</property>
<property name="row_spacing">5</property>
<child>
- <widget class="GtkLabel" id="label34">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Update Package:</property>
- </widget>
- <packing>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label33">
+ <widget class="GtkImage" id="image_get_files">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Install Package:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">7</property>
+ <property name="bottom_attach">8</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label32">
+ <widget class="GtkLabel" id="label49">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Remove Package:</property>
+ <property name="label" translatable="yes">GetFiles:</property>
</widget>
<packing>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
+ <property name="top_attach">7</property>
+ <property name="bottom_attach">8</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label29">
+ <widget class="GtkImage" id="image_file_install">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Get Depends:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">8</property>
+ <property name="bottom_attach">9</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label30">
+ <widget class="GtkLabel" id="label44">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Get Requires:</property>
+ <property name="label" translatable="yes">InstallFile:</property>
</widget>
<packing>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
+ <property name="top_attach">8</property>
+ <property name="bottom_attach">9</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label31">
+ <widget class="GtkLabel" id="label38">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Get Update Detail:</property>
+ <property name="label" translatable="yes">GetDescription:</property>
</widget>
<packing>
- <property name="top_attach">5</property>
- <property name="bottom_attach">6</property>
- <property name="x_options">GTK_FILL</property>
+ <property name="top_attach">6</property>
+ <property name="bottom_attach">7</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_package_update">
+ <widget class="GtkImage" id="image_get_description">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
+ <property name="top_attach">6</property>
+ <property name="bottom_attach">7</property>
+ <property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_package_install">
+ <widget class="GtkImage" id="image_get_update_detail">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
+ <property name="top_attach">5</property>
+ <property name="bottom_attach">6</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_package_remove">
+ <widget class="GtkImage" id="image_get_requires">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
@@ -500,111 +492,118 @@
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_get_requires">
+ <widget class="GtkImage" id="image_package_remove">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_get_update_detail">
+ <widget class="GtkImage" id="image_package_install">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">5</property>
- <property name="bottom_attach">6</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_get_description">
+ <widget class="GtkImage" id="image_package_update">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
- <property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label38">
+ <widget class="GtkLabel" id="label31">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Get Description:</property>
+ <property name="label" translatable="yes">GetUpdate Detail:</property>
</widget>
<packing>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
+ <property name="top_attach">5</property>
+ <property name="bottom_attach">6</property>
+ <property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label44">
+ <widget class="GtkLabel" id="label30">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Install File:</property>
+ <property name="label" translatable="yes">GetRequires:</property>
</widget>
<packing>
- <property name="top_attach">8</property>
- <property name="bottom_attach">9</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_file_install">
+ <widget class="GtkLabel" id="label29">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">GetDepends:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">8</property>
- <property name="bottom_attach">9</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label49">
+ <widget class="GtkLabel" id="label32">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Get Files:</property>
+ <property name="label" translatable="yes">RemovePackage:</property>
</widget>
<packing>
- <property name="top_attach">7</property>
- <property name="bottom_attach">8</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_get_files">
+ <widget class="GtkLabel" id="label33">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">InstallPackage:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">7</property>
- <property name="bottom_attach">8</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label34">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">UpdatePackage:</property>
+ </widget>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
</widget>
@@ -615,45 +614,61 @@
<child>
<widget class="GtkTable" id="table7">
<property name="visible">True</property>
- <property name="n_rows">3</property>
+ <property name="n_rows">4</property>
<property name="n_columns">2</property>
<property name="column_spacing">5</property>
<property name="row_spacing">5</property>
<child>
- <widget class="GtkLabel" id="label46">
+ <widget class="GtkImage" id="image_what_provides">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Get Repository List:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label47">
+ <widget class="GtkLabel" id="label2">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Repository Enable:</property>
+ <property name="label" translatable="yes">WhatProvides:</property>
</widget>
<packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label48">
+ <widget class="GtkImage" id="image_get_repo_list">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Repository Set Data:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkImage" id="image_repo_set_data">
+ <property name="visible">True</property>
+ <property name="icon_name">gtk-dialog-error</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
@@ -671,29 +686,40 @@
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_repo_set_data">
+ <widget class="GtkLabel" id="label48">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">RepositorySetData:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_get_repo_list">
+ <widget class="GtkLabel" id="label47">
<property name="visible">True</property>
- <property name="icon_name">gtk-dialog-error</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">RepositoryEnable:</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label46">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">GetRepositoryList:</property>
+ </widget>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
</widget>
@@ -738,67 +764,86 @@
<widget class="GtkTable" id="table2">
<property name="visible">True</property>
<property name="n_rows">2</property>
- <property name="n_columns">4</property>
+ <property name="n_columns">6</property>
<property name="column_spacing">5</property>
<property name="row_spacing">5</property>
<child>
- <widget class="GtkLabel" id="label14">
+ <widget class="GtkImage" id="image_supported">
<property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">GUI:</property>
+ <property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
+ <property name="left_attach">5</property>
+ <property name="right_attach">6</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
+ <property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_gui">
+ <widget class="GtkImage" id="image_visible">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
+ <property name="left_attach">5</property>
+ <property name="right_attach">6</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label5">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Supported:</property>
+ </widget>
+ <packing>
+ <property name="left_attach">4</property>
+ <property name="right_attach">5</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label12">
+ <widget class="GtkLabel" id="label4">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Installed:</property>
+ <property name="label" translatable="yes">Visible:</property>
</widget>
<packing>
+ <property name="left_attach">4</property>
+ <property name="right_attach">5</property>
+ <property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_installed">
+ <widget class="GtkImage" id="image_free">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label13">
+ <widget class="GtkLabel" id="label50">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Development:</property>
+ <property name="label" translatable="yes">Free:</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
@@ -815,34 +860,67 @@
</packing>
</child>
<child>
- <widget class="GtkLabel" id="label50">
+ <widget class="GtkLabel" id="label13">
<property name="visible">True</property>
<property name="xalign">0</property>
- <property name="label" translatable="yes">Free:</property>
+ <property name="label" translatable="yes">Development:</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options"></property>
</packing>
</child>
<child>
- <widget class="GtkImage" id="image_free">
+ <widget class="GtkImage" id="image_installed">
<property name="visible">True</property>
<property name="icon_name">gtk-dialog-error</property>
</widget>
<packing>
- <property name="left_attach">3</property>
- <property name="right_attach">4</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label12">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Installed:</property>
+ </widget>
+ <packing>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkImage" id="image_gui">
+ <property name="visible">True</property>
+ <property name="icon_name">gtk-dialog-error</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">GTK_FILL</property>
<property name="y_options">GTK_FILL</property>
</packing>
</child>
+ <child>
+ <widget class="GtkLabel" id="label14">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">GUI:</property>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
</widget>
<packing>
<property name="expand">False</property>
Added: trunk/data/pk-install-file.glade
==============================================================================
--- (empty file)
+++ trunk/data/pk-install-file.glade Wed Mar 26 15:21:33 2008
@@ -0,0 +1,350 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
+<!--*- mode: xml -*-->
+<glade-interface>
+ <widget class="GtkWindow" id="window_updates">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Install Package</property>
+ <property name="resizable">False</property>
+ <property name="modal">True</property>
+ <property name="window_position">GTK_WIN_POS_CENTER</property>
+ <property name="icon_name">system-software-update</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <child>
+ <widget class="GtkVBox" id="vbox4">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkHBox" id="hbox_hidden">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkVBox" id="vbox_progress">
+ <property name="border_width">12</property>
+ <property name="spacing">6</property>
+ <child>
+ <widget class="GtkLabel" id="progress_part_label">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0</property>
+ <property name="label"><b>Downloading</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkProgressBar" id="progressbar_percent">
+ <property name="visible">True</property>
+ <property name="pulse_step">0.10000000149</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="label"> </property>
+ </widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHButtonBox" id="hbuttonbox4">
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+ <child>
+ <widget class="GtkButton" id="button_help3">
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-help</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkButton" id="button_close">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-close</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="pack_type">GTK_PACK_END</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkVBox" id="vbox_confirm">
+ <property name="border_width">12</property>
+ <property name="spacing">5</property>
+ <child>
+ <widget class="GtkHBox" id="hbox5">
+ <property name="visible">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <widget class="GtkImage" id="image15">
+ <property name="visible">True</property>
+ <property name="stock">gtk-dialog-info</property>
+ <property name="icon_size">6</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkVBox" id="vbox6">
+ <property name="visible">True</property>
+ <property name="spacing">10</property>
+ <child>
+ <widget class="GtkHBox" id="hbox17">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkLabel" id="label16">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"><b>Installation Complete</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkHButtonBox" id="buttonbox_confirm">
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+ <child>
+ <widget class="GtkButton" id="button_help4">
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-help</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkButton" id="button_close2">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-close</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkVBox" id="vbox_confirm2">
+ <property name="border_width">12</property>
+ <property name="spacing">5</property>
+ <child>
+ <widget class="GtkHBox" id="hbox20">
+ <property name="visible">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <widget class="GtkImage" id="image17">
+ <property name="visible">True</property>
+ <property name="stock">gtk-dialog-error</property>
+ <property name="icon_size">6</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="padding">20</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkVBox" id="vbox5">
+ <property name="visible">True</property>
+ <property name="spacing">10</property>
+ <child>
+ <widget class="GtkHBox" id="hbox21">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkLabel" id="label_error_title">
+ <property name="visible">True</property>
+ <property name="label"><b>Installation failed</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox22">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkLabel" id="label_error_message">
+ <property name="visible">True</property>
+ <property name="label">The transaction was cancelled before any actions were taken</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkExpander" id="expander1">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <widget class="GtkHBox" id="hbox24">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkLabel" id="label_error_details">
+ <property name="visible">True</property>
+ <property name="label">Geeky information about the error...</property>
+ <property name="use_markup">True</property>
+ <property name="wrap">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label27">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"><b>More details:</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="type">label_item</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="padding">5</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="label"> </property>
+ </widget>
+ <packing>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkHButtonBox" id="hbuttonbox6">
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+ <child>
+ <widget class="GtkButton" id="button_help5">
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-help</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkButton" id="button_close3">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-close</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
+ </widget>
+ </child>
+ </widget>
+</glade-interface>
Modified: trunk/data/pk-repo.glade
==============================================================================
--- trunk/data/pk-repo.glade (original)
+++ trunk/data/pk-repo.glade Wed Mar 26 15:21:33 2008
@@ -12,57 +12,72 @@
<child>
<widget class="GtkVBox" id="vbox1">
<property name="visible">True</property>
- <property name="border_width">10</property>
- <property name="spacing">5</property>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwindow_repo">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <child>
- <widget class="GtkTreeView" id="treeview_repo">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- </widget>
- </child>
- </widget>
- </child>
- <child>
- <widget class="GtkHButtonBox" id="hbuttonbox1">
+ <widget class="GtkVBox" id="vbox1">
<property name="visible">True</property>
+ <property name="border_width">10</property>
<property name="spacing">5</property>
- <property name="layout_style">GTK_BUTTONBOX_END</property>
<child>
- <widget class="GtkButton" id="button_help">
+ <widget class="GtkScrolledWindow" id="scrolledwindow_repo">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="can_default">True</property>
- <property name="label">gtk-help</property>
- <property name="use_stock">True</property>
- <property name="response_id">0</property>
+ <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+ <property name="shadow_type">GTK_SHADOW_IN</property>
+ <child>
+ <widget class="GtkTreeView" id="treeview_repo">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ </widget>
+ </child>
</widget>
- <packing>
- <property name="secondary">True</property>
- </packing>
</child>
<child>
- <widget class="GtkButton" id="button_close">
+ <widget class="GtkHButtonBox" id="hbuttonbox1">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="can_default">True</property>
- <property name="label">gtk-close</property>
- <property name="use_stock">True</property>
- <property name="response_id">0</property>
+ <property name="spacing">5</property>
+ <property name="layout_style">GTK_BUTTONBOX_END</property>
+ <child>
+ <widget class="GtkButton" id="button_help">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-help</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkButton" id="button_close">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="label">gtk-close</property>
+ <property name="use_stock">True</property>
+ <property name="response_id">0</property>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
</widget>
<packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
</widget>
+ </child>
+ <child>
+ <widget class="GtkStatusbar" id="statusbar_status">
+ <property name="visible">True</property>
+ <property name="spacing">2</property>
+ </widget>
<packing>
<property name="expand">False</property>
- <property name="fill">False</property>
<property name="position">1</property>
</packing>
</child>
Modified: trunk/po/POTFILES.in
==============================================================================
--- trunk/po/POTFILES.in (original)
+++ trunk/po/POTFILES.in Wed Mar 26 15:21:33 2008
@@ -6,6 +6,7 @@
data/pk-application.glade
data/pk-backend-status.glade
data/pk-install-file.desktop.in
+data/pk-install-file.glade
data/pk-repo.desktop.in
data/pk-repo.glade
data/pk-prefs.desktop.in
Modified: trunk/src/Makefile.am
==============================================================================
--- trunk/src/Makefile.am (original)
+++ trunk/src/Makefile.am Wed Mar 26 15:21:33 2008
@@ -162,6 +162,8 @@
pk_repo_SOURCES = \
pk-repo.c \
+ pk-statusbar.c \
+ pk-statusbar.h \
pk-common-gui.c \
pk-common-gui.h \
$(NULL)
Modified: trunk/src/pk-application-main.c
==============================================================================
--- trunk/src/pk-application-main.c (original)
+++ trunk/src/pk-application-main.c Wed Mar 26 15:21:33 2008
@@ -97,7 +97,7 @@
g_option_context_parse (context, &argc, &argv, NULL);
g_option_context_free (context);
- if (program_version == TRUE) {
+ if (program_version) {
g_print (VERSION "\n");
return 0;
}
Modified: trunk/src/pk-application.c
==============================================================================
--- trunk/src/pk-application.c (original)
+++ trunk/src/pk-application.c Wed Mar 26 15:21:33 2008
@@ -534,13 +534,44 @@
}
/**
+ * pk_application_refresh_search_results:
+ **/
+static gboolean
+pk_application_refresh_search_results (PkApplication *application)
+{
+ GtkWidget *widget;
+ gboolean ret;
+ GError *error = NULL;
+ PkRoleEnum role;
+
+ /* get role -- do we actually need to do anything */
+ pk_client_get_role (application->priv->client_search, &role, NULL, NULL);
+ if (role == PK_ROLE_ENUM_UNKNOWN) {
+ pk_debug ("no defined role, no not requeuing");
+ return FALSE;
+ }
+
+ gtk_list_store_clear (application->priv->packages_store);
+ ret = pk_client_requeue (application->priv->client_search, &error);
+ if (ret == FALSE) {
+ pk_warning ("failed to requeue the search: %s", error->message);
+ g_error_free (error);
+ return FALSE;
+ }
+
+ /* hide details */
+ widget = glade_xml_get_widget (application->priv->glade_xml, "vbox_description_pane");
+ gtk_widget_hide (widget);
+ return TRUE;
+}
+
+/**
* pk_application_finished_cb:
**/
static void
pk_application_finished_cb (PkClient *client, PkExitEnum exit, guint runtime, PkApplication *application)
{
GtkWidget *widget;
- gboolean ret;
PkRoleEnum role;
gchar *text;
@@ -590,12 +621,8 @@
/* do we need to update the search? */
if (role == PK_ROLE_ENUM_INSTALL_PACKAGE ||
role == PK_ROLE_ENUM_REMOVE_PACKAGE) {
- /* refresh the search as the items may have changed */
- gtk_list_store_clear (application->priv->packages_store);
- ret = pk_client_requeue (application->priv->client_search, NULL);
- if (ret == FALSE) {
- pk_warning ("failed to requeue the search");
- }
+ /* refresh the search as the items may have changed and the filter has not changed */
+ pk_application_refresh_search_results (application);
}
}
@@ -638,10 +665,10 @@
}
/**
- * pk_application_find_cb:
+ * pk_application_perform_search:
**/
-static void
-pk_application_find_cb (GtkWidget *button_widget, PkApplication *application)
+static gboolean
+pk_application_perform_search (PkApplication *application)
{
GtkWidget *widget;
const gchar *package;
@@ -649,18 +676,25 @@
GError *error = NULL;
gboolean ret;
- g_return_if_fail (application != NULL);
- g_return_if_fail (PK_IS_APPLICATION (application));
+ /* do we need to cancel a running search? */
+ pk_client_cancel (application->priv->client_search, NULL);
widget = glade_xml_get_widget (application->priv->glade_xml, "entry_text");
package = gtk_entry_get_text (GTK_ENTRY (widget));
+
+ /* have we got input? */
+ if (pk_strzero (package)) {
+ pk_debug ("no input");
+ return FALSE;
+ }
+
ret = pk_strvalidate (package);
if (ret == FALSE) {
pk_debug ("invalid input text, will fail");
- /* todo - make the dialog turn red... */
+ /* TODO - make the dialog turn red... */
pk_application_error_message (application, _("Invalid search text"),
_("The search text contains invalid characters"));
- return;
+ return FALSE;
}
pk_debug ("find %s", package);
@@ -682,14 +716,14 @@
ret = pk_client_search_file (application->priv->client_search, filter_all, package, &error);
} else {
pk_warning ("invalid search type");
- return;
+ return FALSE;
}
if (ret == FALSE) {
pk_application_error_message (application,
_("The search could not be completed"), error->message);
g_error_free (error);
- return;
+ return FALSE;
}
/* clear existing list */
@@ -709,6 +743,19 @@
}
g_free (filter_all);
+ return TRUE;
+}
+
+/**
+ * pk_application_find_cb:
+ **/
+static void
+pk_application_find_cb (GtkWidget *button_widget, PkApplication *application)
+{
+ g_return_if_fail (application != NULL);
+ g_return_if_fail (PK_IS_APPLICATION (application));
+
+ pk_application_perform_search (application);
}
/**
@@ -846,6 +893,10 @@
widget = glade_xml_get_widget (application->priv->glade_xml, "vbox_description_pane");
gtk_widget_hide (widget);
+ /* clear the search text if we clicked the group list */
+ widget = glade_xml_get_widget (application->priv->glade_xml, "entry_text");
+ gtk_entry_set_text (GTK_ENTRY (widget), "");
+
/* This will only work in single or browse selection mode! */
if (gtk_tree_selection_get_selected (selection, &model, &iter)) {
gtk_tree_model_get (model, &iter, GROUPS_COLUMN_ID, &id, -1);
@@ -1484,6 +1535,9 @@
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_INSTALLED);
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_NOT_INSTALLED);
}
+
+ /* refresh the search results */
+ pk_application_perform_search (application);
}
/**
@@ -1512,6 +1566,9 @@
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_DEVELOPMENT);
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_NOT_DEVELOPMENT);
}
+
+ /* refresh the search results */
+ pk_application_perform_search (application);
}
/**
@@ -1540,6 +1597,9 @@
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_GUI);
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_NOT_GUI);
}
+
+ /* refresh the search results */
+ pk_application_perform_search (application);
}
/**
@@ -1568,6 +1628,9 @@
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_FREE);
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_NOT_FREE);
}
+
+ /* refresh the search results */
+ pk_application_perform_search (application);
}
/**
@@ -1583,6 +1646,9 @@
} else {
pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_BASENAME);
}
+
+ /* refresh the search results */
+ pk_application_perform_search (application);
}
/**
@@ -1598,6 +1664,18 @@
} else {
// pk_enum_list_remove (application->priv->current_filter, PK_FILTER_ENUM_NEWEST);
}
+
+ /* refresh the search results */
+ pk_application_perform_search (application);
+}
+
+/**
+ * pk_application_status_changed_cb:
+ **/
+static void
+pk_application_status_changed_cb (PkClient *client, PkStatusEnum status, PkApplication *application)
+{
+ pk_statusbar_set_status (application->priv->statusbar, status);
}
/**
@@ -1649,6 +1727,8 @@
G_CALLBACK (pk_application_finished_cb), application);
g_signal_connect (application->priv->client_search, "progress-changed",
G_CALLBACK (pk_application_progress_changed_cb), application);
+ g_signal_connect (application->priv->client_search, "status-changed",
+ G_CALLBACK (pk_application_status_changed_cb), application);
application->priv->client_action = pk_client_new ();
g_signal_connect (application->priv->client_action, "package",
@@ -1659,6 +1739,8 @@
G_CALLBACK (pk_application_finished_cb), application);
g_signal_connect (application->priv->client_action, "progress-changed",
G_CALLBACK (pk_application_progress_changed_cb), application);
+ g_signal_connect (application->priv->client_action, "status-changed",
+ G_CALLBACK (pk_application_status_changed_cb), application);
application->priv->client_description = pk_client_new ();
g_signal_connect (application->priv->client_description, "description",
@@ -1669,6 +1751,8 @@
G_CALLBACK (pk_application_finished_cb), application);
g_signal_connect (application->priv->client_description, "progress-changed",
G_CALLBACK (pk_application_progress_changed_cb), application);
+ g_signal_connect (application->priv->client_description, "status-changed",
+ G_CALLBACK (pk_application_status_changed_cb), application);
application->priv->client_files = pk_client_new ();
pk_client_set_use_buffer (application->priv->client_files, TRUE, NULL);
@@ -1680,6 +1764,8 @@
G_CALLBACK (pk_application_finished_cb), application);
g_signal_connect (application->priv->client_files, "progress-changed",
G_CALLBACK (pk_application_progress_changed_cb), application);
+ g_signal_connect (application->priv->client_files, "status-changed",
+ G_CALLBACK (pk_application_status_changed_cb), application);
/* get actions */
application->priv->role_list = pk_client_get_actions (application->priv->client_action);
Modified: trunk/src/pk-backend-status.c
==============================================================================
--- trunk/src/pk-backend-status.c (original)
+++ trunk/src/pk-backend-status.c Wed Mar 26 15:21:33 2008
@@ -103,7 +103,7 @@
g_option_context_parse (context, &argc, &argv, NULL);
g_option_context_free (context);
- if (program_version == TRUE) {
+ if (program_version) {
g_print (VERSION "\n");
return 0;
}
@@ -143,110 +143,122 @@
g_free (author);
/* actions */
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_CANCEL) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_CANCEL)) {
widget = glade_xml_get_widget (glade_xml, "image_cancel");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_DEPENDS) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_DEPENDS)) {
widget = glade_xml_get_widget (glade_xml, "image_get_depends");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_UPDATE_DETAIL) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_UPDATE_DETAIL)) {
widget = glade_xml_get_widget (glade_xml, "image_get_update_detail");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_DESCRIPTION) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_DESCRIPTION)) {
widget = glade_xml_get_widget (glade_xml, "image_get_description");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_FILES) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_FILES)) {
widget = glade_xml_get_widget (glade_xml, "image_get_files");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_REQUIRES) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_REQUIRES)) {
widget = glade_xml_get_widget (glade_xml, "image_get_requires");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_UPDATES) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_UPDATES)) {
widget = glade_xml_get_widget (glade_xml, "image_get_updates");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_DETAILS) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_DETAILS)) {
widget = glade_xml_get_widget (glade_xml, "image_search_details");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_FILE) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_FILE)) {
widget = glade_xml_get_widget (glade_xml, "image_search_file");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_GROUP) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_GROUP)) {
widget = glade_xml_get_widget (glade_xml, "image_search_group");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_NAME) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_SEARCH_NAME)) {
widget = glade_xml_get_widget (glade_xml, "image_search_name");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REFRESH_CACHE) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REFRESH_CACHE)) {
widget = glade_xml_get_widget (glade_xml, "image_refresh_cache");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REMOVE_PACKAGE) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REMOVE_PACKAGE)) {
widget = glade_xml_get_widget (glade_xml, "image_package_remove");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_INSTALL_PACKAGE) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_INSTALL_PACKAGE)) {
widget = glade_xml_get_widget (glade_xml, "image_package_install");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_INSTALL_FILE) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_INSTALL_FILE)) {
widget = glade_xml_get_widget (glade_xml, "image_file_install");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_UPDATE_PACKAGES) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_UPDATE_PACKAGES)) {
widget = glade_xml_get_widget (glade_xml, "image_package_update");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_UPDATE_SYSTEM) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_UPDATE_SYSTEM)) {
widget = glade_xml_get_widget (glade_xml, "image_system_update");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_RESOLVE) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_RESOLVE)) {
widget = glade_xml_get_widget (glade_xml, "image_resolve");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_WHAT_PROVIDES)) {
+ widget = glade_xml_get_widget (glade_xml, "image_what_provides");
+ gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
+ }
/* repos */
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_REPO_LIST) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_REPO_LIST)) {
widget = glade_xml_get_widget (glade_xml, "image_get_repo_list");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REPO_ENABLE) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REPO_ENABLE)) {
widget = glade_xml_get_widget (glade_xml, "image_repo_enable");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REPO_SET_DATA) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REPO_SET_DATA)) {
widget = glade_xml_get_widget (glade_xml, "image_repo_set_data");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
/* filters */
- if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_INSTALLED) == TRUE) {
+ if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_INSTALLED)) {
widget = glade_xml_get_widget (glade_xml, "image_installed");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_DEVELOPMENT) == TRUE) {
+ if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_DEVELOPMENT)) {
widget = glade_xml_get_widget (glade_xml, "image_devel");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_GUI) == TRUE) {
+ if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_GUI)) {
widget = glade_xml_get_widget (glade_xml, "image_gui");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
- if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_FREE) == TRUE) {
+ if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_FREE)) {
widget = glade_xml_get_widget (glade_xml, "image_free");
gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
}
+ if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_VISIBLE)) {
+ widget = glade_xml_get_widget (glade_xml, "image_visible");
+ gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
+ }
+ if (pk_enum_list_contains (filter_list, PK_FILTER_ENUM_SUPPORTED)) {
+ widget = glade_xml_get_widget (glade_xml, "image_supported");
+ gtk_image_set_from_icon_name (GTK_IMAGE (widget), "gtk-apply", GTK_ICON_SIZE_MENU);
+ }
g_object_unref (glade_xml);
g_object_unref (client);
Modified: trunk/src/pk-common-gui.c
==============================================================================
--- trunk/src/pk-common-gui.c (original)
+++ trunk/src/pk-common-gui.c Wed Mar 26 15:21:33 2008
@@ -62,6 +62,7 @@
{PK_STATUS_ENUM_UNKNOWN, "help-browser"}, /* fall though value */
{PK_STATUS_ENUM_WAIT, "pk-wait"},
{PK_STATUS_ENUM_SETUP, "pk-setup"},
+ {PK_STATUS_ENUM_RUNNING, "pk-setup"},
{PK_STATUS_ENUM_QUERY, "pk-package-search"},
{PK_STATUS_ENUM_INFO, "pk-package-info"},
{PK_STATUS_ENUM_REFRESH_CACHE, "pk-refresh-cache"},
@@ -570,6 +571,9 @@
case PK_ERROR_ENUM_CANNOT_CANCEL:
text = _("The transaction cannot be cancelled");
break;
+ case PK_ERROR_ENUM_CANNOT_INSTALL_SOURCE_PACKAGE:
+ text = _("Source packages cannot be installed");
+ break;
default:
text = _("Unknown error");
}
@@ -660,6 +664,10 @@
case PK_ERROR_ENUM_CANNOT_CANCEL:
text = _("The transaction is not safe to be cancelled at this time.");
break;
+ case PK_ERROR_ENUM_CANNOT_INSTALL_SOURCE_PACKAGE:
+ text = _("Source packages are not normally installed this way.\n"
+ "Check the extension of the file you are trying to install.");
+ break;
default:
text = _("Unknown error, please report a bug.\n"
"More information is available in the detailed report.");
@@ -754,10 +762,13 @@
text = _("Unknown state");
break;
case PK_STATUS_ENUM_SETUP:
- text = _("Setting up transaction");
+ text = _("Waiting for PackageKit service");
break;
case PK_STATUS_ENUM_WAIT:
- text = _("Waiting for transaction lock");
+ text = _("Waiting for other tasks to complete");
+ break;
+ case PK_STATUS_ENUM_RUNNING:
+ text = _("Running transaction");
break;
case PK_STATUS_ENUM_QUERY:
text = _("Querying");
Modified: trunk/src/pk-install-file.c
==============================================================================
--- trunk/src/pk-install-file.c (original)
+++ trunk/src/pk-install-file.c Wed Mar 26 15:21:33 2008
@@ -27,6 +27,7 @@
#include <stdlib.h>
#include <glib.h>
#include <glib/gi18n.h>
+#include <glade/glade.h>
#include <dbus/dbus-glib.h>
#include <gtk/gtk.h>
#include <locale.h>
@@ -37,18 +38,157 @@
#include "pk-progress.h"
#include "pk-common-gui.h"
-static PkProgress *progress = NULL;
-static GMainLoop *loop = NULL;
+static GladeXML *glade_xml = NULL;
+static PkClient *client = NULL;
+
+typedef enum {
+ PAGE_PROGRESS,
+ PAGE_CONFIRM,
+ PAGE_ERROR,
+ PAGE_LAST
+} PkPageEnum;
+
+static void
+pk_updates_set_page (PkPageEnum page)
+{
+ GList *list, *l;
+ GtkWidget *widget;
+ guint i;
+
+ widget = glade_xml_get_widget (glade_xml, "hbox_hidden");
+ list = gtk_container_get_children (GTK_CONTAINER (widget));
+ for (l=list, i=0; l; l=l->next, i++) {
+ if (i == page) {
+ gtk_widget_show (l->data);
+ } else {
+ gtk_widget_hide (l->data);
+ }
+ }
+}
+
+static gboolean
+finished_timeout (gpointer data)
+{
+ gtk_main_quit ();
+
+ return FALSE;
+}
+
+static void
+pk_install_file_finished_cb (PkClient *client,
+ PkExitEnum exit,
+ guint runtime,
+ gpointer data)
+{
+ if (exit == PK_EXIT_ENUM_SUCCESS) {
+ pk_updates_set_page (PAGE_CONFIRM);
+
+ g_timeout_add_seconds (30, finished_timeout, NULL);
+ }
+
+}
+
+static gint pulse_timeout = 0;
+
+static void
+pk_install_file_progress_changed_cb (PkClient *client,
+ guint percentage,
+ guint subpercentage,
+ guint elapsed,
+ guint remaining,
+ gpointer data)
+{
+ GtkWidget *widget;
+
+ widget = glade_xml_get_widget (glade_xml, "progressbar_percent");
+
+ if (pulse_timeout != 0) {
+ g_source_remove (pulse_timeout);
+ pulse_timeout = 0;
+ }
+
+ if (percentage != PK_CLIENT_PERCENTAGE_INVALID) {
+ gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (widget), (gfloat) percentage / 100.0);
+ }
+}
+
+static gboolean
+pulse_progress (gpointer data)
+{
+ GtkWidget *widget;
+
+ widget = glade_xml_get_widget (glade_xml, "progressbar_percent");
+
+ gtk_progress_bar_pulse (GTK_PROGRESS_BAR (widget));
+
+ return TRUE;
+}
+
+static void
+pk_install_file_status_changed_cb (PkClient *client,
+ PkStatusEnum status,
+ gpointer data)
+{
+ GtkWidget *widget;
+ gchar *text;
+
+ widget = glade_xml_get_widget (glade_xml, "progress_part_label");
+ text = g_strdup_printf ("<b>%s</b>", pk_status_enum_to_localised_text (status));
+ gtk_label_set_markup (GTK_LABEL (widget), text);
+ g_free (text);
+
+ if (status == PK_STATUS_ENUM_WAIT) {
+ if (pulse_timeout == 0) {
+ widget = glade_xml_get_widget (glade_xml, "progressbar_percent");
+
+ gtk_progress_bar_set_pulse_step (GTK_PROGRESS_BAR (widget ), 0.04);
+ pulse_timeout = g_timeout_add (75, pulse_progress, NULL);
+ }
+ }
+}
-/**
- * pk_monitor_action_unref_cb:
- **/
static void
-pk_monitor_action_unref_cb (PkProgress *progress, gpointer data)
+pk_install_file_error_code_cb (PkClient *client,
+ PkErrorCodeEnum code,
+ const gchar *details,
+ gpointer data)
{
- GMainLoop *loop = (GMainLoop *) data;
- g_object_unref (progress);
- g_main_loop_quit (loop);
+ GtkWidget *widget;
+ const gchar *title;
+ gchar *title_bold;
+ gchar *details_safe;
+
+ pk_updates_set_page (PAGE_ERROR);
+
+ /* set bold title */
+ widget = glade_xml_get_widget (glade_xml, "label_error_title");
+ title = pk_error_enum_to_localised_text (code);
+ title_bold = g_strdup_printf ("<b>%s</b>", title);
+ gtk_label_set_label (GTK_LABEL (widget), title_bold);
+ g_free (title_bold);
+
+ widget = glade_xml_get_widget (glade_xml, "label_error_message");
+ gtk_label_set_label (GTK_LABEL (widget), pk_error_enum_to_localised_message (code));
+
+ widget = glade_xml_get_widget (glade_xml, "label_error_details");
+ details_safe = g_markup_escape_text (details, -1);
+ gtk_label_set_label (GTK_LABEL (widget), details_safe);
+}
+
+static gboolean
+pk_window_delete_event_cb (GtkWidget *widget,
+ GdkEvent *event,
+ gpointer data)
+{
+ gtk_main_quit ();
+
+ return FALSE;
+}
+
+static void
+pk_button_close_cb (GtkWidget *widget, gpointer data)
+{
+ gtk_main_quit ();
}
/**
@@ -57,13 +197,13 @@
int
main (int argc, char *argv[])
{
- PkClient *client;
GOptionContext *context;
gboolean ret;
gboolean verbose = FALSE;
gboolean program_version = FALSE;
- gchar *tid;
GError *error;
+ GtkWidget *main_window;
+ GtkWidget *widget;
const GOptionEntry options[] = {
{ "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose,
@@ -92,7 +232,7 @@
g_option_context_parse (context, &argc, &argv, NULL);
g_option_context_free (context);
- if (program_version == TRUE) {
+ if (program_version) {
g_print (VERSION "\n");
return 0;
}
@@ -110,9 +250,46 @@
}
client = pk_client_new ();
+
+ g_signal_connect (client, "finished",
+ G_CALLBACK (pk_install_file_finished_cb), NULL);
+ g_signal_connect (client, "progress-changed",
+ G_CALLBACK (pk_install_file_progress_changed_cb), NULL);
+ g_signal_connect (client, "status-changed",
+ G_CALLBACK (pk_install_file_status_changed_cb), NULL);
+ g_signal_connect (client, "error-code",
+ G_CALLBACK (pk_install_file_error_code_cb), NULL);
+
+ glade_xml = glade_xml_new (PK_DATA "/pk-install-file.glade", NULL, NULL);
+ main_window = glade_xml_get_widget (glade_xml, "window_updates");
+
+ /* Get the main window quit */
+ g_signal_connect (main_window, "delete_event",
+ G_CALLBACK (pk_window_delete_event_cb), NULL);
+
+ widget = glade_xml_get_widget (glade_xml, "button_close");
+ g_signal_connect (widget, "clicked",
+ G_CALLBACK (pk_button_close_cb), NULL);
+
+ widget = glade_xml_get_widget (glade_xml, "button_close2");
+ g_signal_connect (widget, "clicked",
+ G_CALLBACK (pk_button_close_cb), NULL);
+
+ widget = glade_xml_get_widget (glade_xml, "button_close3");
+ g_signal_connect (widget, "clicked",
+ G_CALLBACK (pk_button_close_cb), NULL);
+
+ /* set the label blank initially */
+ widget = glade_xml_get_widget (glade_xml, "progress_part_label");
+ gtk_label_set_label (GTK_LABEL (widget), "");
+
+ pk_updates_set_page (PAGE_PROGRESS);
+
error = NULL;
ret = pk_client_install_file (client, argv[1], &error);
if (ret == FALSE) {
+ gtk_widget_hide (main_window);
+
/* check if we got a permission denied */
if (g_str_has_prefix (error->message, "org.freedesktop.packagekit.localinstall")) {
pk_error_modal_dialog (_("Failed to install"),
@@ -123,17 +300,10 @@
error->message);
}
} else {
- loop = g_main_loop_new (NULL, FALSE);
- tid = pk_client_get_tid (client);
- /* create a new progress object */
- progress = pk_progress_new ();
- g_signal_connect (progress, "action-unref",
- G_CALLBACK (pk_monitor_action_unref_cb), loop);
- pk_progress_monitor_tid (progress, tid);
- g_free (tid);
- g_main_loop_run (loop);
+ gtk_main ();
}
g_object_unref (client);
+
return 0;
}
Modified: trunk/src/pk-repo.c
==============================================================================
--- trunk/src/pk-repo.c (original)
+++ trunk/src/pk-repo.c Wed Mar 26 15:21:33 2008
@@ -35,12 +35,15 @@
#include <pk-connection.h>
#include <pk-enum-list.h>
#include "pk-common-gui.h"
+#include "pk-statusbar.h"
+
#include <locale.h>
static GladeXML *glade_xml = NULL;
static GtkListStore *list_store = NULL;
static PkClient *client = NULL;
static PkEnumList *role_list;
+static PkStatusbar *statusbar;
enum
{
@@ -81,6 +84,8 @@
GtkTreePath *path = gtk_tree_path_new_from_string (path_str);
gboolean installed;
gchar *repo_id;
+ gboolean ret;
+ GError *error = NULL;
/* do we have the capability? */
if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_REPO_ENABLE) == FALSE) {
@@ -97,14 +102,20 @@
/* do something with the value */
installed ^= 1;
- /* set new value */
- gtk_list_store_set (GTK_LIST_STORE (model), &iter, REPO_COLUMN_ENABLED, installed, -1);
-
/* do this to the repo */
pk_debug ("setting %s to %i", repo_id, installed);
pk_client_reset (client, NULL);
- pk_client_repo_enable (client, repo_id, installed, NULL);
+ ret = pk_client_repo_enable (client, repo_id, installed, &error);
+ if (!ret) {
+ pk_warning ("could not set repo enabled state: %s", error->message);
+ g_error_free (error);
+ goto out;
+ }
+
+ /* set new value */
+ gtk_list_store_set (GTK_LIST_STORE (model), &iter, REPO_COLUMN_ENABLED, installed, -1);
+out:
/* clean up */
g_free (repo_id);
gtk_tree_path_free (path);
@@ -198,12 +209,30 @@
* pk_repo_finished_cb:
**/
static void
-pk_repo_finished_cb (PkClient *client, PkStatusEnum status, guint runtime, gpointer data)
+pk_repo_finished_cb (PkClient *client, PkExitEnum exit, guint runtime, gpointer data)
{
/* nothing? */
}
/**
+ * pk_repo_status_changed_cb:
+ **/
+static void
+pk_repo_status_changed_cb (PkClient *client, PkStatusEnum status, gpointer data)
+{
+ pk_statusbar_set_status (statusbar, status);
+}
+
+/**
+ * pk_repo_error_code_cb:
+ **/
+static void
+pk_repo_error_code_cb (PkClient *client, PkErrorCodeEnum code, const gchar *details, gpointer data)
+{
+ pk_error_modal_dialog (pk_error_enum_to_localised_text (code), details);
+}
+
+/**
* main:
**/
int
@@ -256,17 +285,18 @@
client = pk_client_new ();
g_signal_connect (client, "repo-detail",
G_CALLBACK (pk_repo_detail_cb), NULL);
+ g_signal_connect (client, "status-changed",
+ G_CALLBACK (pk_repo_status_changed_cb), NULL);
g_signal_connect (client, "finished",
G_CALLBACK (pk_repo_finished_cb), NULL);
+ g_signal_connect (client, "error-code",
+ G_CALLBACK (pk_repo_error_code_cb), NULL);
/* get actions */
role_list = pk_client_get_actions (client);
glade_xml = glade_xml_new (PK_DATA "/pk-repo.glade", NULL, NULL);
main_window = glade_xml_get_widget (glade_xml, "window_repo");
-
- /* Hide window first so that the dialogue resizes itself without redrawing */
- gtk_widget_hide (main_window);
gtk_window_set_icon_name (GTK_WINDOW (main_window), "system-installer");
/* Get the main window quit */
@@ -301,6 +331,11 @@
pk_treeview_add_columns (GTK_TREE_VIEW (widget));
gtk_tree_view_columns_autosize (GTK_TREE_VIEW (widget));
+ /* use the in-statusbar for progress */
+ statusbar = pk_statusbar_new ();
+ widget = glade_xml_get_widget (glade_xml, "statusbar_status");
+ pk_statusbar_set_widget (statusbar, widget);
+
if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_GET_REPO_LIST)) {
/* get the update list */
pk_client_get_repo_list (client, NULL);
@@ -311,8 +346,6 @@
gtk_widget_set_sensitive (widget, FALSE);
}
- gtk_widget_show (main_window);
-
g_main_loop_run (loop);
g_main_loop_unref (loop);
@@ -320,6 +353,7 @@
g_object_unref (list_store);
g_object_unref (client);
g_object_unref (role_list);
+ g_object_unref (statusbar);
return 0;
}
Modified: trunk/src/pk-transaction-viewer.c
==============================================================================
--- trunk/src/pk-transaction-viewer.c (original)
+++ trunk/src/pk-transaction-viewer.c Wed Mar 26 15:21:33 2008
@@ -150,7 +150,7 @@
icon_name = pk_role_enum_to_icon_name (role);
gtk_list_store_set (list_store_general, &iter, PACKAGES_COLUMN_GENERAL_ICON, icon_name, -1);
- if (succeeded == TRUE) {
+ if (succeeded) {
icon_name = "document-new";
} else {
icon_name = "dialog-error";
@@ -270,7 +270,7 @@
transaction_data = (gchar *) g_hash_table_lookup (hash, tid);
/* no details? */
- if (pk_strzero (transaction_data) == TRUE) {
+ if (pk_strzero (transaction_data)) {
widget = glade_xml_get_widget (glade_xml, "frame_details");
gtk_widget_hide (widget);
return;
@@ -374,7 +374,7 @@
g_option_context_parse (context, &argc, &argv, NULL);
g_option_context_free (context);
- if (program_version == TRUE) {
+ if (program_version) {
g_print (VERSION "\n");
return 0;
}
@@ -446,7 +446,7 @@
gtk_box_pack_start (GTK_BOX (widget), button, FALSE, FALSE, 0);
gtk_box_reorder_child (GTK_BOX (widget), button, 1);
/* hide the rollback button if we can't do the action */
- if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_ROLLBACK) == TRUE) {
+ if (pk_enum_list_contains (role_list, PK_ROLE_ENUM_ROLLBACK)) {
polkit_gnome_action_set_visible (rollback_action, TRUE);
} else {
polkit_gnome_action_set_visible (rollback_action, FALSE);
Modified: trunk/src/pk-update-viewer.c
==============================================================================
--- trunk/src/pk-update-viewer.c (original)
+++ trunk/src/pk-update-viewer.c Wed Mar 26 15:21:33 2008
@@ -60,7 +60,7 @@
static PolKitGnomeAction *restart_action = NULL;
/* for the preview throbber */
-static void pk_updates_add_preview_item (PkClient *client, const gchar *icon, const gchar *message, gboolean clear);
+static void pk_updates_add_preview_item (const gchar *icon, const gchar *message, gboolean clear);
static void pk_updates_description_animation_stop (void);
static int animation_timeout = 0;
static int frame_counter = 0;
@@ -322,7 +322,7 @@
pk_updates_animation_load_frames ();
- pk_updates_add_preview_item (client, NULL, _("Getting information..."), TRUE);
+ pk_updates_add_preview_item (NULL, _("Getting information..."), TRUE);
widget = glade_xml_get_widget (glade_xml, "treeview_preview");
column = gtk_tree_view_get_column (GTK_TREE_VIEW (widget), 0);
@@ -506,10 +506,10 @@
}
/**
- * pk_button_close_cb:
+ * pk_button_close_and_cancel_cb:
**/
static void
-pk_button_close_cb (GtkWidget *widget, gpointer data)
+pk_button_close_and_cancel_cb (GtkWidget *widget, gpointer data)
{
GMainLoop *loop = (GMainLoop *) data;
@@ -517,7 +517,15 @@
pk_client_cancel (client, NULL);
g_main_loop_quit (loop);
- pk_debug ("emitting action-close");
+}
+
+static void
+pk_button_close_cb (GtkWidget *widget, gpointer data)
+{
+ GMainLoop *loop = (GMainLoop *) data;
+
+ /* just close the UI, let the installation continue */
+ g_main_loop_quit (loop);
}
/**
@@ -770,6 +778,10 @@
GtkWidget *widget;
gchar *text;
+ if (status == PK_STATUS_ENUM_WAIT) {
+ pk_updates_add_preview_item ("dialog-information", _("Waiting for previous tasks to complete!"), TRUE);
+ }
+
widget = glade_xml_get_widget (glade_xml, "progress_part_label");
text = g_strdup_printf ("<b>%s</b>", pk_status_enum_to_localised_text (status));
gtk_label_set_markup (GTK_LABEL (widget), text);
@@ -787,9 +799,6 @@
{
GMainLoop *loop = (GMainLoop *) data;
- /* we might have a transaction running */
- pk_client_cancel (client, NULL);
-
g_main_loop_quit (loop);
return FALSE;
}
@@ -970,7 +979,7 @@
* pk_updates_add_preview_item:
**/
static void
-pk_updates_add_preview_item (PkClient *client, const gchar *icon, const gchar *message, gboolean clear)
+pk_updates_add_preview_item (const gchar *icon, const gchar *message, gboolean clear)
{
GtkWidget *tree_view;
GtkTreeSelection *selection;
@@ -1165,7 +1174,7 @@
length = pk_client_package_buffer_get_size (client);
if (length == 0) {
/* put a message in the listbox */
- pk_updates_add_preview_item (client, "dialog-information", _("There are no updates available!"), TRUE);
+ pk_updates_add_preview_item ("dialog-information", _("There are no updates available!"), TRUE);
/* if no updates then hide apply */
widget = glade_xml_get_widget (glade_xml, "button_review");
@@ -1208,37 +1217,37 @@
if (num_security > 0) {
icon = pk_info_enum_to_icon_name (PK_INFO_ENUM_SECURITY);
text = pk_update_enum_to_localised_text (PK_INFO_ENUM_SECURITY, num_security);
- pk_updates_add_preview_item (client, icon, text, FALSE);
+ pk_updates_add_preview_item (icon, text, FALSE);
g_free (text);
}
if (num_important > 0) {
icon = pk_info_enum_to_icon_name (PK_INFO_ENUM_IMPORTANT);
text = pk_update_enum_to_localised_text (PK_INFO_ENUM_IMPORTANT, num_important);
- pk_updates_add_preview_item (client, icon, text, FALSE);
+ pk_updates_add_preview_item (icon, text, FALSE);
g_free (text);
}
if (num_bugfix > 0) {
icon = pk_info_enum_to_icon_name (PK_INFO_ENUM_BUGFIX);
text = pk_update_enum_to_localised_text (PK_INFO_ENUM_BUGFIX, num_bugfix);
- pk_updates_add_preview_item (client, icon, text, FALSE);
+ pk_updates_add_preview_item (icon, text, FALSE);
g_free (text);
}
if (num_enhancement > 0) {
icon = pk_info_enum_to_icon_name (PK_INFO_ENUM_ENHANCEMENT);
text = pk_update_enum_to_localised_text (PK_INFO_ENUM_ENHANCEMENT, num_enhancement);
- pk_updates_add_preview_item (client, icon, text, FALSE);
+ pk_updates_add_preview_item (icon, text, FALSE);
g_free (text);
}
if (num_low > 0) {
icon = pk_info_enum_to_icon_name (PK_INFO_ENUM_LOW);
text = pk_update_enum_to_localised_text (PK_INFO_ENUM_LOW, num_low);
- pk_updates_add_preview_item (client, icon, text, FALSE);
+ pk_updates_add_preview_item (icon, text, FALSE);
g_free (text);
}
if (num_normal > 0) {
icon = pk_info_enum_to_icon_name (PK_INFO_ENUM_NORMAL);
text = pk_update_enum_to_localised_text (PK_INFO_ENUM_NORMAL, num_normal);
- pk_updates_add_preview_item (client, icon, text, FALSE);
+ pk_updates_add_preview_item (icon, text, FALSE);
g_free (text);
}
@@ -1287,7 +1296,7 @@
gtk_list_store_clear (list_store_preview);
/* put a message in the listbox */
- pk_updates_add_preview_item (client, "dialog-information", _("There is an update already in progress!"), TRUE);
+ pk_updates_add_preview_item ("dialog-information", _("There is an update already in progress!"), TRUE);
/* if doing it then hide apply and refresh */
polkit_gnome_action_set_visible (update_system_action, FALSE);
@@ -1442,9 +1451,6 @@
glade_xml = glade_xml_new (PK_DATA "/pk-update-viewer.glade", NULL, NULL);
main_window = glade_xml_get_widget (glade_xml, "window_updates");
- /* Hide window first so that the dialogue resizes itself without redrawing */
- gtk_widget_hide (main_window);
-
/* hide until we have updates */
widget = glade_xml_get_widget (glade_xml, "hbox_reboot");
gtk_widget_hide (widget);
@@ -1479,15 +1485,17 @@
g_signal_connect (main_window, "delete_event",
G_CALLBACK (pk_window_delete_event_cb), loop);
- widget = glade_xml_get_widget (glade_xml, "button_close");
- g_signal_connect (widget, "clicked",
- G_CALLBACK (pk_button_close_cb), loop);
- gtk_widget_set_tooltip_text(widget, _("Close without updating"));
+ /* button_close2 and button_close3 are on the overview/review
+ * screens, where we want to cancel transactions when closing
+ */
widget = glade_xml_get_widget (glade_xml, "button_close2");
g_signal_connect (widget, "clicked",
- G_CALLBACK (pk_button_close_cb), loop);
+ G_CALLBACK (pk_button_close_and_cancel_cb), loop);
widget = glade_xml_get_widget (glade_xml, "button_close3");
g_signal_connect (widget, "clicked",
+ G_CALLBACK (pk_button_close_and_cancel_cb), loop);
+ widget = glade_xml_get_widget (glade_xml, "button_close");
+ g_signal_connect (widget, "clicked",
G_CALLBACK (pk_button_close_cb), loop);
widget = glade_xml_get_widget (glade_xml, "button_close4");
g_signal_connect (widget, "clicked",
@@ -1656,7 +1664,6 @@
/* only show this if we succeeded */
pk_updates_preview_animation_start ();
}
- gtk_widget_show (main_window);
g_main_loop_run (loop);
g_main_loop_unref (loop);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]