r1403 - in trunk/src/target/OM-2007/applications/openmoko-appmanager: . src
caowai_song at sita.openmoko.org
caowai_song at sita.openmoko.org
Mon Mar 19 07:55:25 CET 2007
Author: caowai_song
Date: 2007-03-19 07:55:14 +0100 (Mon, 19 Mar 2007)
New Revision: 1403
Modified:
trunk/src/target/OM-2007/applications/openmoko-appmanager/ChangeLog
trunk/src/target/OM-2007/applications/openmoko-appmanager/README
trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.c
trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.h
trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-window.c
trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.c
trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.h
trunk/src/target/OM-2007/applications/openmoko-appmanager/src/package-list.c
Log:
1. After initialization, the appmanager will display the installed
packages list.
2. After install/remove/upgrade packages, the appmanager will
refresh all package list.
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/ChangeLog
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/ChangeLog 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/ChangeLog 2007-03-19 06:55:14 UTC (rev 1403)
@@ -0,0 +1,10 @@
+2007-03-19 Chaowei Song <songcw at fic-sh.com.cn>
+ * src/package-list.c: (package_list_execute_change):
+ Set a changed flag when install, remove or upgrade a package success.
+ * src/appmanager-data:
+ Add menubox(and set/get function) to the appmanager-data struct.
+ * src/appmanager-window.c: (main)
+ Save the menubox to appmanager-data after initialization.
+ Show installed package list after initialization.
+ * src/filter-menu.c filter-menu.h:
+ Add filter_menu_show_install_list.
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/README
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/README 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/README 2007-03-19 06:55:14 UTC (rev 1403)
@@ -1,4 +1,27 @@
-This is the OpenMoko Application Manager.
+ Application Manager README
+ ==========================
-It requires libipkg 0.99.163 with the is-processing.patch.
+Introduction
+============
+Application manager is an "ipk packages" management program. It's
+based on the libmokoui and libipkg. It will hopefully make the process
+ of installing/removing/upgrading packages on neo-1973 become more
+easy.
+
+
+Building
+========
+To build the application manager, you should follow the steps:
+ ./autogen.sh
+ make
+ make install
+
+The application manager needs the libmokoui and libipkg(0.99.163 and
+with the is-processing.patch) to build. The configure script (in the
+autogen scirpt) will detect these. The autogen script need the
+automake tools.
+
+At many times, your build system and running system are different,
+you should rewrite the autogen script when need.
+
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.c 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.c 2007-03-19 06:55:14 UTC (rev 1403)
@@ -37,6 +37,7 @@
data->mwindow = NULL;
data->filtermenu = NULL;
+ data->menubox = NULL;
data->selectmenu = NULL;
data->searchentry = NULL;
data->tvpkglist = NULL;
@@ -99,6 +100,20 @@
}
/**
+ * @brief Set the menubox to the application manager data
+ * @param appdata The application manager data struct
+ * @param menubox The menubox
+ */
+void
+application_manager_data_set_menubox (ApplicationManagerData *appdata,
+ GtkWidget * menubox)
+{
+ g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata));
+
+ appdata->menubox = menubox;
+}
+
+/**
* @brief Set the select menu to the application manager data
* @param appdata The application manager data struct
* @param selectmenu The select menu
@@ -385,6 +400,19 @@
return appdata->filtermenu;
}
+/*
+ * @brief Get the menubox from the application manager data
+ * @param appdata The application manager data
+ * @return The menubox
+ */
+GtkWidget *
+application_manager_get_menubox (ApplicationManagerData *appdata)
+{
+ g_return_val_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata), NULL);
+
+ return appdata->menubox;
+}
+
/**
* @brief Get the select menu from the application manager data
* @param appdata The application manager data
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.h 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-data.h 2007-03-19 06:55:14 UTC (rev 1403)
@@ -56,17 +56,18 @@
MokoPanedWindow *mwindow; /* The main window */
GtkMenu *filtermenu; /* The filter menu */
+ GtkWidget *menubox; /* The menubox */
GtkMenu *selectmenu; /* The select menu */
GtkEntry *searchentry; /* The search entry */
GtkWidget *tvpkglist; /* The treeview of the package list */
GtkWidget *tvdetail; /* The textview of the details info */
- gpointer pkglist; /* The package list get from lib ipkg */
- gpointer sectionlist; /* The section list parse from the package list */
- gpointer installedlist; /* The list of all installed packages */
- gpointer upgradelist; /* The list of all upgradeable packages */
- gpointer selectedlist; /* The list of packages that user selected */
- gpointer nosecpkglist; /* The list of packages whose section name is NULL */
- gpointer currentlist; /* The current list that display on the navigation list */
+ gpointer pkglist; /* The package list get from lib ipkg */
+ gpointer sectionlist; /* The section list parse from the package list */
+ gpointer installedlist; /* The list of all installed packages */
+ gpointer upgradelist; /* The list of all upgradeable packages */
+ gpointer selectedlist; /* The list of packages that user selected */
+ gpointer nosecpkglist; /* The list of packages whose section name is NULL */
+ gpointer currentlist; /* The current list that display on the navigation list */
GdkPixbuf *statuspix[N_COUNT_PKG_STATUS]; /* The all pixbufs that need by the package list store */
gchar *searchhistory; /* The search history */
GtkWidget *installdialog; /* The install dialog */
@@ -90,6 +91,9 @@
void application_manager_data_set_filter_menu (ApplicationManagerData *appdata,
GtkMenu *filtermenu);
+void application_manager_data_set_menubox (ApplicationManagerData *appdata,
+ GtkWidget *menubox);
+
void application_manager_data_set_select_menu (ApplicationManagerData *appdata,
GtkMenu *selectmenu);
@@ -137,6 +141,9 @@
GtkMenu *
application_manager_get_filter_menu (ApplicationManagerData *appdata);
+GtkWidget *
+ application_manager_get_menubox (ApplicationManagerData *appdata);
+
GtkMenu *
application_manager_get_select_menu (ApplicationManagerData *appdata);
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-window.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-window.c 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/src/appmanager-window.c 2007-03-19 06:55:14 UTC (rev 1403)
@@ -49,8 +49,10 @@
MokoToolBox *toolbox;
GtkWidget *detail;
- gint ret;
+ GtkWidget *menubox;
+ gint ret;
+
g_debug ("appplication manager start up");
gtk_init (&argc, &argv);
@@ -85,6 +87,10 @@
gtk_widget_show (GTK_WIDGET (selectmenu));
application_manager_data_set_select_menu (appdata, selectmenu);
+ /* Save the menubox to the application manager data */
+ menubox = moko_paned_window_get_menubox (window);
+ application_manager_data_set_menubox (appdata, menubox);
+
navigation = navigation_area_new (appdata);
moko_paned_window_set_upper_pane (window, navigation);
@@ -108,8 +114,12 @@
return -1;
}
+ /* Add section list to the filter menu */
package_list_add_section_to_filter_menu (appdata);
+ /* Show the installed package list at initialization */
+ filter_menu_show_install_list (appdata);
+
gtk_widget_show_all (GTK_WIDGET (window));
g_debug ("application manager enter main loop");
gtk_main ();
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.c 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.c 2007-03-19 06:55:14 UTC (rev 1403)
@@ -27,7 +27,7 @@
/**
* @brief The callback function of the search result menuitem.
*/
-void
+static void
on_search_result_activate (GtkMenuItem *menuitem, gpointer userdata)
{
g_debug ("Clicked the search result menuitem");
@@ -36,7 +36,7 @@
/**
* @brief The callback function of the installed menuitem.
*/
-void
+static void
on_installed_activate (GtkMenuItem *menuitem, gpointer userdata)
{
gpointer pkglist;
@@ -45,16 +45,17 @@
g_debug ("Clicked the installed menuitem");
pkglist = application_manager_data_get_installedlist (
- MOKO_APPLICATION_MANAGER_DATA (userdata));
+ MOKO_APPLICATION_MANAGER_DATA (userdata));
- navigation_area_refresh_with_package_list (MOKO_APPLICATION_MANAGER_DATA (userdata),
- pkglist);
+ navigation_area_refresh_with_package_list (
+ MOKO_APPLICATION_MANAGER_DATA (userdata),
+ pkglist);
}
/**
* @brief The callback function of the upgradeable menuitem.
*/
-void
+static void
on_upgradeable_activate (GtkMenuItem *menuitem, gpointer userdata)
{
gpointer pkglist;
@@ -63,16 +64,17 @@
g_debug ("Clicked the upgradeable menuitem");
pkglist = application_manager_data_get_upgradelist (
- MOKO_APPLICATION_MANAGER_DATA (userdata));
+ MOKO_APPLICATION_MANAGER_DATA (userdata));
- navigation_area_refresh_with_package_list (MOKO_APPLICATION_MANAGER_DATA (userdata),
- pkglist);
+ navigation_area_refresh_with_package_list (
+ MOKO_APPLICATION_MANAGER_DATA (userdata),
+ pkglist);
}
/**
* @brief The callback function of the selected menuitem.
*/
-void
+static void
on_selected_activate (GtkMenuItem *menuitem, gpointer userdata)
{
gpointer pkglist;
@@ -81,10 +83,11 @@
g_debug ("Click the selected menuitem");
pkglist = application_manager_data_get_selectedlist (
- MOKO_APPLICATION_MANAGER_DATA (userdata));
+ MOKO_APPLICATION_MANAGER_DATA (userdata));
- navigation_area_refresh_with_package_list (MOKO_APPLICATION_MANAGER_DATA (userdata),
- pkglist);
+ navigation_area_refresh_with_package_list (
+ MOKO_APPLICATION_MANAGER_DATA (userdata),
+ pkglist);
}
/**
@@ -116,15 +119,17 @@
return;
}
- pkglist = package_list_get_with_name (MOKO_APPLICATION_MANAGER_DATA (userdata),
- secname);
+ pkglist = package_list_get_with_name (
+ MOKO_APPLICATION_MANAGER_DATA (userdata),
+ secname);
if (pkglist == NULL)
{
g_debug ("Can not find the section that named:%s", secname);
return;
}
- navigation_area_refresh_with_package_list (MOKO_APPLICATION_MANAGER_DATA (userdata),
- pkglist);
+ navigation_area_refresh_with_package_list (
+ MOKO_APPLICATION_MANAGER_DATA (userdata),
+ pkglist);
}
/**
@@ -183,7 +188,8 @@
* @param name The label name of the menu item
*/
void
-filter_menu_add_item (GtkMenu *filtermenu, const gchar *name,
+filter_menu_add_item (GtkMenu *filtermenu,
+ const gchar *name,
ApplicationManagerData *appdata)
{
GtkWidget *dymenuitem;
@@ -199,3 +205,27 @@
}
+/*
+ * @brief Show the installed packages list after initialization or reinitialization
+ * @param appdata The application manager data
+ */
+void
+filter_menu_show_install_list (ApplicationManagerData *appdata)
+{
+ gpointer pkglist;
+ MokoMenuBox *menubox;
+
+ g_return_if_fail (MOKO_IS_APPLICATION_MANAGER_DATA (appdata));
+
+ pkglist = application_manager_data_get_installedlist (
+ MOKO_APPLICATION_MANAGER_DATA (appdata));
+
+ navigation_area_refresh_with_package_list (
+ MOKO_APPLICATION_MANAGER_DATA (appdata),
+ pkglist);
+
+ menubox = MOKO_MENU_BOX (application_manager_get_menubox (appdata));
+
+ g_return_if_fail (IS_MOKO_MENU_BOX (menubox));
+ moko_menu_box_set_active_filter (menubox, _("Installed"));
+}
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.h
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.h 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/src/filter-menu.h 2007-03-19 06:55:14 UTC (rev 1403)
@@ -30,5 +30,8 @@
void filter_menu_add_item (GtkMenu *filtermenu, const gchar *name,
ApplicationManagerData *appdata);
+void
+filter_menu_show_install_list (ApplicationManagerData *appdata);
+
#endif
Modified: trunk/src/target/OM-2007/applications/openmoko-appmanager/src/package-list.c
===================================================================
--- trunk/src/target/OM-2007/applications/openmoko-appmanager/src/package-list.c 2007-03-19 06:48:19 UTC (rev 1402)
+++ trunk/src/target/OM-2007/applications/openmoko-appmanager/src/package-list.c 2007-03-19 06:55:14 UTC (rev 1403)
@@ -1403,17 +1403,19 @@
break;
default :
+ ret = -1;
break;
- if (ret == 0)
+
+ }
+ if (ret == 0)
+ {
+ change = TRUE;
+ if (newname != NULL)
{
- change = TRUE;
- if (newname != NULL)
- {
- g_debug ("free new name");
- free (newname);
- g_debug ("free new name success");
- newname = NULL;
- }
+ g_debug ("free new name");
+ free (newname);
+ g_debug ("free new name success");
+ newname = NULL;
}
}
tmplist = tmplist->next;
More information about the commitlog
mailing list