From d63d3929de9f53c33f7de4f1c75d9bcc5846fa70 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 00:13:50 -0600 Subject: Adding a small little function to find default applications. --- src/default-applications.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/default-applications.c (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c new file mode 100644 index 0000000..c389d32 --- /dev/null +++ b/src/default-applications.c @@ -0,0 +1,23 @@ + +#include +#include +#include "default-applications.h" + +struct default_db_t { + const gchar * desktop_file; + const gchar * name; +}; + +struct default_db_t default_db[] = { + {"evolution.desktop", N_("Mail")}, + {NULL, NULL} +}; + +const gchar * +get_default_name (gchar * desktop_path) +{ + + return NULL; + + +} -- cgit v1.2.3 From 4665a089117f7fc0eb537aedcca0d7d10168b12d Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 00:20:22 -0600 Subject: Actually searching through the list --- src/default-applications.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index c389d32..ad63412 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -16,8 +16,22 @@ struct default_db_t default_db[] = { const gchar * get_default_name (gchar * desktop_path) { + g_return_val_if_fail(desktop_path != NULL, NULL); + gchar * basename = g_path_get_basename(desktop_path); + g_return_val_if_fail(basename != NULL, NULL); - return NULL; + gint i; + for (i = 0; default_db[i].desktop_file != NULL; i++) { + if (g_strcmp0(default_db[i].desktop_file, basename) == 0) { + break; + } + } + + g_free(basename); + if (default_db[i].name != NULL) { + return default_db[i].name; + } + return NULL; } -- cgit v1.2.3 From 06fa866fc1177ada1b16ab4a15ffdf2a0e6d00d9 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 00:26:15 -0600 Subject: Adding empathy and gwibber to the mix. --- src/default-applications.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index ad63412..5347b43 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -10,6 +10,8 @@ struct default_db_t { struct default_db_t default_db[] = { {"evolution.desktop", N_("Mail")}, + {"empathy.desktop", N_("Chat")}, + {"gwibber.desktop", N_("Microblogging")}, {NULL, NULL} }; -- cgit v1.2.3 From 617a39e8447ef92d564c40c489b97eca45a5f6d6 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 00:32:04 -0600 Subject: Refactoring into a helper --- src/default-applications.c | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index 5347b43..6aca047 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -6,17 +6,18 @@ struct default_db_t { const gchar * desktop_file; const gchar * name; + const gchar * setupname; }; struct default_db_t default_db[] = { - {"evolution.desktop", N_("Mail")}, - {"empathy.desktop", N_("Chat")}, - {"gwibber.desktop", N_("Microblogging")}, + {"evolution.desktop", N_("Mail"), N_("Set Up Mail...")}, + {"empathy.desktop", N_("Chat"), N_("Set Up Chat...")}, + {"gwibber.desktop", N_("Microblogging"), N_("Set Up Microblogging...")}, {NULL, NULL} }; -const gchar * -get_default_name (gchar * desktop_path) +struct default_db_t * +get_default_helper (gchar * desktop_path) { g_return_val_if_fail(desktop_path != NULL, NULL); gchar * basename = g_path_get_basename(desktop_path); @@ -31,9 +32,19 @@ get_default_name (gchar * desktop_path) g_free(basename); - if (default_db[i].name != NULL) { - return default_db[i].name; + if (default_db[i].desktop_file != NULL) { + return &default_db[i]; } return NULL; } + +const gchar * +get_default_name (gchar * desktop_path) +{ + struct default_db_t * db = get_default_helper(desktop_path); + + if (db == NULL) + return NULL; + return db->name; +} -- cgit v1.2.3 From f405913a9a4343fdacd3814b3ea380165d235846 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 00:34:17 -0600 Subject: Adding in the setup function. --- src/default-applications.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index 6aca047..f924702 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -16,7 +16,7 @@ struct default_db_t default_db[] = { {NULL, NULL} }; -struct default_db_t * +static struct default_db_t * get_default_helper (gchar * desktop_path) { g_return_val_if_fail(desktop_path != NULL, NULL); @@ -48,3 +48,13 @@ get_default_name (gchar * desktop_path) return NULL; return db->name; } + +const gchar * +get_default_setup (gchar * desktop_path) +{ + struct default_db_t * db = get_default_helper(desktop_path); + + if (db == NULL) + return NULL; + return db->setupname; +} -- cgit v1.2.3 From f1d31773ebf223650d4e26509403196e1a9bf53f Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 00:36:29 -0600 Subject: Copyright headers. --- src/default-applications.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index f924702..f1b11c0 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -1,3 +1,23 @@ +/* +Looking for the default applications. A quick lookup. + +Copyright 2010 Canonical Ltd. + +Authors: + Ted Gould + +This program is free software: you can redistribute it and/or modify it +under the terms of the GNU General Public License version 3, as published +by the Free Software Foundation. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranties of +MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR +PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program. If not, see . +*/ #include #include -- cgit v1.2.3 From 3c0e73c7ec818b6759a7805abe07909296791908 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 00:39:52 -0600 Subject: Keeping our desktop file paths safe. --- src/default-applications.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index f1b11c0..5fd6612 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -37,7 +37,7 @@ struct default_db_t default_db[] = { }; static struct default_db_t * -get_default_helper (gchar * desktop_path) +get_default_helper (const gchar * desktop_path) { g_return_val_if_fail(desktop_path != NULL, NULL); gchar * basename = g_path_get_basename(desktop_path); @@ -60,7 +60,7 @@ get_default_helper (gchar * desktop_path) } const gchar * -get_default_name (gchar * desktop_path) +get_default_name (const gchar * desktop_path) { struct default_db_t * db = get_default_helper(desktop_path); @@ -70,7 +70,7 @@ get_default_name (gchar * desktop_path) } const gchar * -get_default_setup (gchar * desktop_path) +get_default_setup (const gchar * desktop_path) { struct default_db_t * db = get_default_helper(desktop_path); -- cgit v1.2.3 From 15c04c9d6b866e1f50cff304d2b276dcb0fdfd8a Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 4 Mar 2010 14:27:29 -0600 Subject: Adding in an icon lookup to the default apps db --- src/default-applications.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index 5fd6612..e45ae38 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -27,12 +27,13 @@ struct default_db_t { const gchar * desktop_file; const gchar * name; const gchar * setupname; + const gchar * icon; }; struct default_db_t default_db[] = { - {"evolution.desktop", N_("Mail"), N_("Set Up Mail...")}, - {"empathy.desktop", N_("Chat"), N_("Set Up Chat...")}, - {"gwibber.desktop", N_("Microblogging"), N_("Set Up Microblogging...")}, + {"evolution.desktop", N_("Mail"), N_("Set Up Mail..."), "applications-email-panel"}, + {"empathy.desktop", N_("Chat"), N_("Set Up Chat..."), "applications-chat-panel"}, + {"gwibber.desktop", N_("Microblogging"), N_("Set Up Microblogging..."), "applications-microblogging-panel"}, {NULL, NULL} }; @@ -78,3 +79,13 @@ get_default_setup (const gchar * desktop_path) return NULL; return db->setupname; } + +const gchar * +get_default_icon (const gchar * desktop_path) +{ + struct default_db_t * db = get_default_helper(desktop_path); + + if (db == NULL) + return NULL; + return db->icon; +} -- cgit v1.2.3 From 99fc985be95f6463a2aa6f8cf8d31870255ce7a0 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Fri, 12 Mar 2010 08:49:32 -0600 Subject: Changing from microblogging to broadcast --- src/default-applications.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/default-applications.c') diff --git a/src/default-applications.c b/src/default-applications.c index e45ae38..afb5025 100644 --- a/src/default-applications.c +++ b/src/default-applications.c @@ -31,9 +31,9 @@ struct default_db_t { }; struct default_db_t default_db[] = { - {"evolution.desktop", N_("Mail"), N_("Set Up Mail..."), "applications-email-panel"}, - {"empathy.desktop", N_("Chat"), N_("Set Up Chat..."), "applications-chat-panel"}, - {"gwibber.desktop", N_("Microblogging"), N_("Set Up Microblogging..."), "applications-microblogging-panel"}, + {"evolution.desktop", N_("Mail"), N_("Set Up Mail..."), "applications-email-panel"}, + {"empathy.desktop", N_("Chat"), N_("Set Up Chat..."), "applications-chat-panel"}, + {"gwibber.desktop", N_("Broadcast"), N_("Set Up Broadcast Account..."), "applications-microblogging-panel"}, {NULL, NULL} }; -- cgit v1.2.3