aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Meeks <michael.meeks@novell.com>2010-02-24 23:08:43 +0800
committerMatthew Barnes <mbarnes@redhat.com>2010-03-14 09:49:49 +0800
commit2166e7f4c73e8cc1f9b7f00027eec9de05961ee2 (patch)
tree1daf69f846e213f67e8aedc17a77947a7b60b656
parent1dd3ee006e671f459b17addbab09c6f10757e561 (diff)
downloadgsoc2013-evolution-2166e7f4c73e8cc1f9b7f00027eec9de05961ee2.tar
gsoc2013-evolution-2166e7f4c73e8cc1f9b7f00027eec9de05961ee2.tar.gz
gsoc2013-evolution-2166e7f4c73e8cc1f9b7f00027eec9de05961ee2.tar.bz2
gsoc2013-evolution-2166e7f4c73e8cc1f9b7f00027eec9de05961ee2.tar.lz
gsoc2013-evolution-2166e7f4c73e8cc1f9b7f00027eec9de05961ee2.tar.xz
gsoc2013-evolution-2166e7f4c73e8cc1f9b7f00027eec9de05961ee2.tar.zst
gsoc2013-evolution-2166e7f4c73e8cc1f9b7f00027eec9de05961ee2.zip
Add 'express mode' gconf setting
-rw-r--r--shell/apps_evolution_shell.schemas.in8
-rw-r--r--shell/e-shell.c22
-rw-r--r--shell/e-shell.h1
3 files changed, 30 insertions, 1 deletions
diff --git a/shell/apps_evolution_shell.schemas.in b/shell/apps_evolution_shell.schemas.in
index db96c9bbce..5682e6440e 100644
--- a/shell/apps_evolution_shell.schemas.in
+++ b/shell/apps_evolution_shell.schemas.in
@@ -389,5 +389,13 @@
</locale>
</schema>
+ <schema>
+ <key>/schemas/apps/evolution/shell/express_mode</key>
+ <applyto>/apps/evolution/shell/express_mode</applyto>
+ <owner>evolution</owner>
+ <type>bool</type>
+ <default>false</default>
+ </schema>
+
</schemalist>
</gconfschemafile>
diff --git a/shell/e-shell.c b/shell/e-shell.c
index fe046a4fc7..3fc23477d8 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -60,6 +60,7 @@ struct _EShellPrivate {
guint online : 1;
guint quit_cancelled : 1;
guint safe_mode : 1;
+ guint express : 1;
};
enum {
@@ -1037,7 +1038,8 @@ shell_init (EShell *shell)
shell->priv->backends_by_name = backends_by_name;
shell->priv->backends_by_scheme = backends_by_scheme;
shell->priv->safe_mode = e_file_lock_exists ();
-
+ shell->priv->express = gconf_client_get_bool (
+ shell->priv->gconf_client, "/apps/evolution/shell/express_mode", NULL);
g_object_ref_sink (shell->priv->preferences_window);
#if defined(NM_SUPPORT) && NM_SUPPORT
@@ -1659,6 +1661,24 @@ e_shell_set_online (EShell *shell,
}
/**
+ * e_shell_get_online:
+ * @shell: an #EShell
+ *
+ * Returns %TRUE if Evolution is online, %FALSE if Evolution is offline.
+ * Evolution may be offline because the user elected to work offline, or
+ * because the network has become unavailable.
+ *
+ * Returns: %TRUE if Evolution is online
+ **/
+gboolean
+e_shell_get_express_mode (EShell *shell)
+{
+ g_return_val_if_fail (E_IS_SHELL (shell), FALSE);
+
+ return shell->priv->online;
+}
+
+/**
* e_shell_get_preferences_window:
* @shell: an #EShell
*
diff --git a/shell/e-shell.h b/shell/e-shell.h
index 1a324806a2..33d1e1c496 100644
--- a/shell/e-shell.h
+++ b/shell/e-shell.h
@@ -121,6 +121,7 @@ void e_shell_set_network_available (EShell *shell,
gboolean e_shell_get_online (EShell *shell);
void e_shell_set_online (EShell *shell,
gboolean online);
+gboolean e_shell_get_express_mode (EShell *shell);
GtkWidget * e_shell_get_preferences_window (EShell *shell);
void e_shell_event (EShell *shell,
const gchar *event_name,