Migrate pluma to GSettings
This commit is contained in:
parent
c3ebc88709
commit
261945f51b
|
@ -37,7 +37,6 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include <glib/gi18n.h>
|
#include <glib/gi18n.h>
|
||||||
#include <mateconf/mateconf-client.h>
|
|
||||||
|
|
||||||
#include <pluma/pluma-prefs-manager.h>
|
#include <pluma/pluma-prefs-manager.h>
|
||||||
|
|
||||||
|
|
|
@ -375,7 +375,7 @@ pluma_search_dialog_init (PlumaSearchDialog *dlg)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
dlg->priv->search_entry = pluma_history_entry_new ("pluma2_search_for_entry",
|
dlg->priv->search_entry = pluma_history_entry_new ("history-search-for",
|
||||||
TRUE);
|
TRUE);
|
||||||
gtk_widget_set_size_request (dlg->priv->search_entry, 300, -1);
|
gtk_widget_set_size_request (dlg->priv->search_entry, 300, -1);
|
||||||
pluma_history_entry_set_escape_func
|
pluma_history_entry_set_escape_func
|
||||||
|
@ -391,7 +391,7 @@ pluma_search_dialog_init (PlumaSearchDialog *dlg)
|
||||||
dlg->priv->search_entry,
|
dlg->priv->search_entry,
|
||||||
1, 2, 0, 1);
|
1, 2, 0, 1);
|
||||||
|
|
||||||
dlg->priv->replace_entry = pluma_history_entry_new ("pluma2_replace_with_entry",
|
dlg->priv->replace_entry = pluma_history_entry_new ("history-replace-with",
|
||||||
TRUE);
|
TRUE);
|
||||||
pluma_history_entry_set_escape_func
|
pluma_history_entry_set_escape_func
|
||||||
(PLUMA_HISTORY_ENTRY (dlg->priv->replace_entry),
|
(PLUMA_HISTORY_ENTRY (dlg->priv->replace_entry),
|
||||||
|
|
|
@ -811,7 +811,7 @@ pluma_app_get_views (PlumaApp *app)
|
||||||
*
|
*
|
||||||
* Gets the lockdown mask (see #PlumaLockdownMask) for the application.
|
* Gets the lockdown mask (see #PlumaLockdownMask) for the application.
|
||||||
* The lockdown mask determines which functions are locked down using
|
* The lockdown mask determines which functions are locked down using
|
||||||
* the MATE-wise lockdown MateConf keys.
|
* the MATE-wise lockdown GSettings keys.
|
||||||
**/
|
**/
|
||||||
PlumaLockdownMask
|
PlumaLockdownMask
|
||||||
pluma_app_get_lockdown (PlumaApp *app)
|
pluma_app_get_lockdown (PlumaApp *app)
|
||||||
|
|
|
@ -35,9 +35,10 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <glib/gi18n.h>
|
#include <glib/gi18n.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <mateconf/mateconf-client.h>
|
#include <gio/gio.h>
|
||||||
|
|
||||||
#include "pluma-history-entry.h"
|
#include "pluma-history-entry.h"
|
||||||
|
#include "pluma-prefs-manager.h"
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
PROP_0,
|
PROP_0,
|
||||||
|
@ -60,7 +61,7 @@ struct _PlumaHistoryEntryPrivate
|
||||||
|
|
||||||
GtkEntryCompletion *completion;
|
GtkEntryCompletion *completion;
|
||||||
|
|
||||||
MateConfClient *mateconf_client;
|
GSettings *settings;
|
||||||
};
|
};
|
||||||
|
|
||||||
G_DEFINE_TYPE(PlumaHistoryEntry, pluma_history_entry, GTK_TYPE_COMBO_BOX_ENTRY)
|
G_DEFINE_TYPE(PlumaHistoryEntry, pluma_history_entry, GTK_TYPE_COMBO_BOX_ENTRY)
|
||||||
|
@ -132,10 +133,10 @@ pluma_history_entry_finalize (GObject *object)
|
||||||
|
|
||||||
g_free (priv->history_id);
|
g_free (priv->history_id);
|
||||||
|
|
||||||
if (priv->mateconf_client != NULL)
|
if (priv->settings != NULL)
|
||||||
{
|
{
|
||||||
g_object_unref (G_OBJECT (priv->mateconf_client));
|
g_object_unref (G_OBJECT (priv->settings));
|
||||||
priv->mateconf_client = NULL;
|
priv->settings = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
G_OBJECT_CLASS (pluma_history_entry_parent_class)->finalize (object);
|
G_OBJECT_CLASS (pluma_history_entry_parent_class)->finalize (object);
|
||||||
|
@ -188,30 +189,6 @@ get_history_store (PlumaHistoryEntry *entry)
|
||||||
return (GtkListStore *) store;
|
return (GtkListStore *) store;
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
|
||||||
get_history_key (PlumaHistoryEntry *entry)
|
|
||||||
{
|
|
||||||
gchar *tmp;
|
|
||||||
gchar *key;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* We store the data under /apps/mate-settings/
|
|
||||||
* like the old MateEntry did. Maybe we should
|
|
||||||
* consider moving it to the /pluma MateConf prefix...
|
|
||||||
* Or maybe we should just switch away from MateConf.
|
|
||||||
*/
|
|
||||||
|
|
||||||
tmp = mateconf_escape_key (entry->priv->history_id, -1);
|
|
||||||
key = g_strconcat ("/apps/mate-settings/",
|
|
||||||
"pluma",
|
|
||||||
"/history-",
|
|
||||||
tmp,
|
|
||||||
NULL);
|
|
||||||
g_free (tmp);
|
|
||||||
|
|
||||||
return key;
|
|
||||||
}
|
|
||||||
|
|
||||||
static GSList *
|
static GSList *
|
||||||
get_history_list (PlumaHistoryEntry *entry)
|
get_history_list (PlumaHistoryEntry *entry)
|
||||||
{
|
{
|
||||||
|
@ -246,23 +223,18 @@ get_history_list (PlumaHistoryEntry *entry)
|
||||||
static void
|
static void
|
||||||
pluma_history_entry_save_history (PlumaHistoryEntry *entry)
|
pluma_history_entry_save_history (PlumaHistoryEntry *entry)
|
||||||
{
|
{
|
||||||
GSList *mateconf_items;
|
GSList *settings_items;
|
||||||
gchar *key;
|
|
||||||
|
|
||||||
g_return_if_fail (PLUMA_IS_HISTORY_ENTRY (entry));
|
g_return_if_fail (PLUMA_IS_HISTORY_ENTRY (entry));
|
||||||
|
|
||||||
mateconf_items = get_history_list (entry);
|
settings_items = get_history_list (entry);
|
||||||
key = get_history_key (entry);
|
|
||||||
|
|
||||||
mateconf_client_set_list (entry->priv->mateconf_client,
|
pluma_prefs_manager_set_gslist (entry->priv->settings,
|
||||||
key,
|
entry->priv->history_id,
|
||||||
MATECONF_VALUE_STRING,
|
settings_items);
|
||||||
mateconf_items,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
g_slist_foreach (mateconf_items, (GFunc) g_free, NULL);
|
g_slist_foreach (settings_items, (GFunc) g_free, NULL);
|
||||||
g_slist_free (mateconf_items);
|
g_slist_free (settings_items);
|
||||||
g_free (key);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
@ -382,25 +354,21 @@ pluma_history_entry_append_text (PlumaHistoryEntry *entry,
|
||||||
static void
|
static void
|
||||||
pluma_history_entry_load_history (PlumaHistoryEntry *entry)
|
pluma_history_entry_load_history (PlumaHistoryEntry *entry)
|
||||||
{
|
{
|
||||||
GSList *mateconf_items, *l;
|
GSList *settings_items, *l;
|
||||||
GtkListStore *store;
|
GtkListStore *store;
|
||||||
GtkTreeIter iter;
|
GtkTreeIter iter;
|
||||||
gchar *key;
|
|
||||||
guint i;
|
guint i;
|
||||||
|
|
||||||
g_return_if_fail (PLUMA_IS_HISTORY_ENTRY (entry));
|
g_return_if_fail (PLUMA_IS_HISTORY_ENTRY (entry));
|
||||||
|
|
||||||
store = get_history_store (entry);
|
store = get_history_store (entry);
|
||||||
key = get_history_key (entry);
|
|
||||||
|
|
||||||
mateconf_items = mateconf_client_get_list (entry->priv->mateconf_client,
|
settings_items = pluma_prefs_manager_get_gslist (entry->priv->settings,
|
||||||
key,
|
entry->priv->history_id);
|
||||||
MATECONF_VALUE_STRING,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
gtk_list_store_clear (store);
|
gtk_list_store_clear (store);
|
||||||
|
|
||||||
for (l = mateconf_items, i = 0;
|
for (l = settings_items, i = 0;
|
||||||
l != NULL && i < entry->priv->history_length;
|
l != NULL && i < entry->priv->history_length;
|
||||||
l = l->next, i++)
|
l = l->next, i++)
|
||||||
{
|
{
|
||||||
|
@ -412,9 +380,8 @@ pluma_history_entry_load_history (PlumaHistoryEntry *entry)
|
||||||
-1);
|
-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
g_slist_foreach (mateconf_items, (GFunc) g_free, NULL);
|
g_slist_foreach (settings_items, (GFunc) g_free, NULL);
|
||||||
g_slist_free (mateconf_items);
|
g_slist_free (settings_items);
|
||||||
g_free (key);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -442,8 +409,8 @@ pluma_history_entry_init (PlumaHistoryEntry *entry)
|
||||||
priv->history_length = PLUMA_HISTORY_ENTRY_HISTORY_LENGTH_DEFAULT;
|
priv->history_length = PLUMA_HISTORY_ENTRY_HISTORY_LENGTH_DEFAULT;
|
||||||
|
|
||||||
priv->completion = NULL;
|
priv->completion = NULL;
|
||||||
|
|
||||||
priv->mateconf_client = mateconf_client_get_default ();
|
priv->settings = g_settings_new (PLUMA_SCHEMA);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -699,7 +699,7 @@ pluma_plugins_engine_activate_plugins (PlumaPluginsEngine *engine,
|
||||||
g_return_if_fail (PLUMA_IS_PLUGINS_ENGINE (engine));
|
g_return_if_fail (PLUMA_IS_PLUGINS_ENGINE (engine));
|
||||||
g_return_if_fail (PLUMA_IS_WINDOW (window));
|
g_return_if_fail (PLUMA_IS_WINDOW (window));
|
||||||
|
|
||||||
/* the first time, we get the 'active' plugins from mateconf */
|
/* the first time, we get the 'active' plugins from GSettings */
|
||||||
if (engine->priv->activate_from_prefs)
|
if (engine->priv->activate_from_prefs)
|
||||||
{
|
{
|
||||||
active_plugins = pluma_prefs_manager_get_active_plugins ();
|
active_plugins = pluma_prefs_manager_get_active_plugins ();
|
||||||
|
|
|
@ -96,7 +96,7 @@ void pluma_plugins_engine_deactivate_plugins (PlumaPluginsEngine *engine,
|
||||||
void pluma_plugins_engine_update_plugins_ui (PlumaPluginsEngine *engine,
|
void pluma_plugins_engine_update_plugins_ui (PlumaPluginsEngine *engine,
|
||||||
PlumaWindow *window);
|
PlumaWindow *window);
|
||||||
|
|
||||||
/* private for mateconf notification */
|
/* private for GSettings notification */
|
||||||
void pluma_plugins_engine_active_plugins_changed
|
void pluma_plugins_engine_active_plugins_changed
|
||||||
(PlumaPluginsEngine *engine);
|
(PlumaPluginsEngine *engine);
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -30,12 +30,14 @@
|
||||||
#ifndef __PLUMA_PREFS_MANAGER_PRIVATE_H__
|
#ifndef __PLUMA_PREFS_MANAGER_PRIVATE_H__
|
||||||
#define __PLUMA_PREFS_MANAGER_PRIVATE_H__
|
#define __PLUMA_PREFS_MANAGER_PRIVATE_H__
|
||||||
|
|
||||||
#include <mateconf/mateconf-client.h>
|
#include <gio/gio.h>
|
||||||
|
|
||||||
typedef struct _PlumaPrefsManager PlumaPrefsManager;
|
typedef struct _PlumaPrefsManager PlumaPrefsManager;
|
||||||
|
|
||||||
struct _PlumaPrefsManager {
|
struct _PlumaPrefsManager {
|
||||||
MateConfClient *mateconf_client;
|
GSettings *settings;
|
||||||
|
GSettings *lockdown_settings;
|
||||||
|
GSettings *interface_settings;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern PlumaPrefsManager *pluma_prefs_manager;
|
extern PlumaPrefsManager *pluma_prefs_manager;
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include <glib/gi18n.h>
|
#include <glib/gi18n.h>
|
||||||
#include <mateconf/mateconf-value.h>
|
#include <gio/gio.h>
|
||||||
|
|
||||||
#include "pluma-prefs-manager.h"
|
#include "pluma-prefs-manager.h"
|
||||||
#include "pluma-prefs-manager-private.h"
|
#include "pluma-prefs-manager-private.h"
|
||||||
|
@ -42,13 +42,12 @@
|
||||||
#include "pluma-encodings.h"
|
#include "pluma-encodings.h"
|
||||||
#include "pluma-utils.h"
|
#include "pluma-utils.h"
|
||||||
|
|
||||||
#define DEFINE_BOOL_PREF(name, key, def) gboolean \
|
#define DEFINE_BOOL_PREF(name, key) gboolean \
|
||||||
pluma_prefs_manager_get_ ## name (void) \
|
pluma_prefs_manager_get_ ## name (void) \
|
||||||
{ \
|
{ \
|
||||||
pluma_debug (DEBUG_PREFS); \
|
pluma_debug (DEBUG_PREFS); \
|
||||||
\
|
\
|
||||||
return pluma_prefs_manager_get_bool (key, \
|
return pluma_prefs_manager_get_bool (key); \
|
||||||
(def)); \
|
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
void \
|
void \
|
||||||
|
@ -70,13 +69,12 @@ pluma_prefs_manager_ ## name ## _can_set (void) \
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define DEFINE_INT_PREF(name, key, def) gint \
|
#define DEFINE_INT_PREF(name, key) gint \
|
||||||
pluma_prefs_manager_get_ ## name (void) \
|
pluma_prefs_manager_get_ ## name (void) \
|
||||||
{ \
|
{ \
|
||||||
pluma_debug (DEBUG_PREFS); \
|
pluma_debug (DEBUG_PREFS); \
|
||||||
\
|
\
|
||||||
return pluma_prefs_manager_get_int (key, \
|
return pluma_prefs_manager_get_int (key); \
|
||||||
(def)); \
|
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
void \
|
void \
|
||||||
|
@ -98,13 +96,12 @@ pluma_prefs_manager_ ## name ## _can_set (void) \
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#define DEFINE_STRING_PREF(name, key, def) gchar* \
|
#define DEFINE_STRING_PREF(name, key) gchar* \
|
||||||
pluma_prefs_manager_get_ ## name (void) \
|
pluma_prefs_manager_get_ ## name (void) \
|
||||||
{ \
|
{ \
|
||||||
pluma_debug (DEBUG_PREFS); \
|
pluma_debug (DEBUG_PREFS); \
|
||||||
\
|
\
|
||||||
return pluma_prefs_manager_get_string (key, \
|
return pluma_prefs_manager_get_string (key); \
|
||||||
def); \
|
|
||||||
} \
|
} \
|
||||||
\
|
\
|
||||||
void \
|
void \
|
||||||
|
@ -130,29 +127,11 @@ PlumaPrefsManager *pluma_prefs_manager = NULL;
|
||||||
|
|
||||||
static GtkWrapMode get_wrap_mode_from_string (const gchar* str);
|
static GtkWrapMode get_wrap_mode_from_string (const gchar* str);
|
||||||
|
|
||||||
static gboolean mateconf_client_get_bool_with_default (MateConfClient* client,
|
static gboolean pluma_prefs_manager_get_bool (const gchar* key);
|
||||||
const gchar* key,
|
|
||||||
gboolean def,
|
|
||||||
GError** err);
|
|
||||||
|
|
||||||
static gchar *mateconf_client_get_string_with_default (MateConfClient* client,
|
static gint pluma_prefs_manager_get_int (const gchar* key);
|
||||||
const gchar* key,
|
|
||||||
const gchar* def,
|
|
||||||
GError** err);
|
|
||||||
|
|
||||||
static gint mateconf_client_get_int_with_default (MateConfClient* client,
|
static gchar *pluma_prefs_manager_get_string (const gchar* key);
|
||||||
const gchar* key,
|
|
||||||
gint def,
|
|
||||||
GError** err);
|
|
||||||
|
|
||||||
static gboolean pluma_prefs_manager_get_bool (const gchar* key,
|
|
||||||
gboolean def);
|
|
||||||
|
|
||||||
static gint pluma_prefs_manager_get_int (const gchar* key,
|
|
||||||
gint def);
|
|
||||||
|
|
||||||
static gchar *pluma_prefs_manager_get_string (const gchar* key,
|
|
||||||
const gchar* def);
|
|
||||||
|
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
|
@ -162,28 +141,13 @@ pluma_prefs_manager_init (void)
|
||||||
|
|
||||||
if (pluma_prefs_manager == NULL)
|
if (pluma_prefs_manager == NULL)
|
||||||
{
|
{
|
||||||
MateConfClient *mateconf_client;
|
|
||||||
|
|
||||||
mateconf_client = mateconf_client_get_default ();
|
|
||||||
if (mateconf_client == NULL)
|
|
||||||
{
|
|
||||||
g_warning (_("Cannot initialize preferences manager."));
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
pluma_prefs_manager = g_new0 (PlumaPrefsManager, 1);
|
pluma_prefs_manager = g_new0 (PlumaPrefsManager, 1);
|
||||||
|
pluma_prefs_manager->settings = g_settings_new (PLUMA_SCHEMA);
|
||||||
pluma_prefs_manager->mateconf_client = mateconf_client;
|
pluma_prefs_manager->lockdown_settings = g_settings_new (GPM_LOCKDOWN_SCHEMA);
|
||||||
}
|
pluma_prefs_manager->interface_settings = g_settings_new (GPM_INTERFACE_SCHEMA);
|
||||||
|
|
||||||
if (pluma_prefs_manager->mateconf_client == NULL)
|
|
||||||
{
|
|
||||||
g_free (pluma_prefs_manager);
|
|
||||||
pluma_prefs_manager = NULL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return pluma_prefs_manager != NULL;
|
return pluma_prefs_manager != NULL;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -193,65 +157,47 @@ pluma_prefs_manager_shutdown (void)
|
||||||
|
|
||||||
g_return_if_fail (pluma_prefs_manager != NULL);
|
g_return_if_fail (pluma_prefs_manager != NULL);
|
||||||
|
|
||||||
g_object_unref (pluma_prefs_manager->mateconf_client);
|
g_object_unref (pluma_prefs_manager->settings);
|
||||||
pluma_prefs_manager->mateconf_client = NULL;
|
pluma_prefs_manager->settings = NULL;
|
||||||
|
g_object_unref (pluma_prefs_manager->lockdown_settings);
|
||||||
|
pluma_prefs_manager->lockdown_settings = NULL;
|
||||||
|
g_object_unref (pluma_prefs_manager->interface_settings);
|
||||||
|
pluma_prefs_manager->interface_settings = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
pluma_prefs_manager_get_bool (const gchar* key, gboolean def)
|
pluma_prefs_manager_get_bool (const gchar* key)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL, def);
|
return g_settings_get_boolean (pluma_prefs_manager->settings, key);
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL, def);
|
|
||||||
|
|
||||||
return mateconf_client_get_bool_with_default (pluma_prefs_manager->mateconf_client,
|
|
||||||
key,
|
|
||||||
def,
|
|
||||||
NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static gint
|
static gint
|
||||||
pluma_prefs_manager_get_int (const gchar* key, gint def)
|
pluma_prefs_manager_get_int (const gchar* key)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL, def);
|
return g_settings_get_int (pluma_prefs_manager->settings, key);
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL, def);
|
}
|
||||||
|
|
||||||
return mateconf_client_get_int_with_default (pluma_prefs_manager->mateconf_client,
|
|
||||||
key,
|
|
||||||
def,
|
|
||||||
NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
static gchar *
|
static gchar *
|
||||||
pluma_prefs_manager_get_string (const gchar* key, const gchar* def)
|
pluma_prefs_manager_get_string (const gchar* key)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL,
|
return g_settings_get_string (pluma_prefs_manager->settings, key);
|
||||||
def ? g_strdup (def) : NULL);
|
}
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL,
|
|
||||||
def ? g_strdup (def) : NULL);
|
|
||||||
|
|
||||||
return mateconf_client_get_string_with_default (pluma_prefs_manager->mateconf_client,
|
|
||||||
key,
|
|
||||||
def,
|
|
||||||
NULL);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
pluma_prefs_manager_set_bool (const gchar* key, gboolean value)
|
pluma_prefs_manager_set_bool (const gchar* key, gboolean value)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_if_fail (pluma_prefs_manager != NULL);
|
g_return_if_fail (g_settings_is_writable (
|
||||||
g_return_if_fail (pluma_prefs_manager->mateconf_client != NULL);
|
pluma_prefs_manager->settings, key));
|
||||||
g_return_if_fail (mateconf_client_key_is_writable (
|
|
||||||
pluma_prefs_manager->mateconf_client, key, NULL));
|
g_settings_set_boolean (pluma_prefs_manager->settings, key, value);
|
||||||
|
|
||||||
mateconf_client_set_bool (pluma_prefs_manager->mateconf_client, key, value, NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -259,12 +205,10 @@ pluma_prefs_manager_set_int (const gchar* key, gint value)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_if_fail (pluma_prefs_manager != NULL);
|
g_return_if_fail (g_settings_is_writable (
|
||||||
g_return_if_fail (pluma_prefs_manager->mateconf_client != NULL);
|
pluma_prefs_manager->settings, key));
|
||||||
g_return_if_fail (mateconf_client_key_is_writable (
|
|
||||||
pluma_prefs_manager->mateconf_client, key, NULL));
|
g_settings_set_int (pluma_prefs_manager->settings, key, value);
|
||||||
|
|
||||||
mateconf_client_set_int (pluma_prefs_manager->mateconf_client, key, value, NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -274,12 +218,10 @@ pluma_prefs_manager_set_string (const gchar* key, const gchar* value)
|
||||||
|
|
||||||
g_return_if_fail (value != NULL);
|
g_return_if_fail (value != NULL);
|
||||||
|
|
||||||
g_return_if_fail (pluma_prefs_manager != NULL);
|
g_return_if_fail (g_settings_is_writable (
|
||||||
g_return_if_fail (pluma_prefs_manager->mateconf_client != NULL);
|
pluma_prefs_manager->settings, key));
|
||||||
g_return_if_fail (mateconf_client_key_is_writable (
|
|
||||||
pluma_prefs_manager->mateconf_client, key, NULL));
|
g_settings_set_string (pluma_prefs_manager->settings, key, value);
|
||||||
|
|
||||||
mateconf_client_set_string (pluma_prefs_manager->mateconf_client, key, value, NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
@ -288,20 +230,18 @@ pluma_prefs_manager_key_is_writable (const gchar* key)
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL, FALSE);
|
g_return_val_if_fail (pluma_prefs_manager != NULL, FALSE);
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL, FALSE);
|
g_return_val_if_fail (pluma_prefs_manager->settings != NULL, FALSE);
|
||||||
|
|
||||||
return mateconf_client_key_is_writable (pluma_prefs_manager->mateconf_client, key, NULL);
|
return g_settings_is_writable (pluma_prefs_manager->settings, key);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Use default font */
|
/* Use default font */
|
||||||
DEFINE_BOOL_PREF (use_default_font,
|
DEFINE_BOOL_PREF (use_default_font,
|
||||||
GPM_USE_DEFAULT_FONT,
|
GPM_USE_DEFAULT_FONT)
|
||||||
GPM_DEFAULT_USE_DEFAULT_FONT)
|
|
||||||
|
|
||||||
/* Editor font */
|
/* Editor font */
|
||||||
DEFINE_STRING_PREF (editor_font,
|
DEFINE_STRING_PREF (editor_font,
|
||||||
GPM_EDITOR_FONT,
|
GPM_EDITOR_FONT)
|
||||||
GPM_DEFAULT_EDITOR_FONT)
|
|
||||||
|
|
||||||
/* System font */
|
/* System font */
|
||||||
gchar *
|
gchar *
|
||||||
|
@ -309,30 +249,26 @@ pluma_prefs_manager_get_system_font (void)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
return pluma_prefs_manager_get_string (GPM_SYSTEM_FONT,
|
return g_settings_get_string (pluma_prefs_manager->interface_settings,
|
||||||
GPM_DEFAULT_SYSTEM_FONT);
|
GPM_SYSTEM_FONT);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Create backup copy */
|
/* Create backup copy */
|
||||||
DEFINE_BOOL_PREF (create_backup_copy,
|
DEFINE_BOOL_PREF (create_backup_copy,
|
||||||
GPM_CREATE_BACKUP_COPY,
|
GPM_CREATE_BACKUP_COPY)
|
||||||
GPM_DEFAULT_CREATE_BACKUP_COPY)
|
|
||||||
|
|
||||||
/* Auto save */
|
/* Auto save */
|
||||||
DEFINE_BOOL_PREF (auto_save,
|
DEFINE_BOOL_PREF (auto_save,
|
||||||
GPM_AUTO_SAVE,
|
GPM_AUTO_SAVE)
|
||||||
GPM_DEFAULT_AUTO_SAVE)
|
|
||||||
|
|
||||||
/* Auto save interval */
|
/* Auto save interval */
|
||||||
DEFINE_INT_PREF (auto_save_interval,
|
DEFINE_INT_PREF (auto_save_interval,
|
||||||
GPM_AUTO_SAVE_INTERVAL,
|
GPM_AUTO_SAVE_INTERVAL)
|
||||||
GPM_DEFAULT_AUTO_SAVE_INTERVAL)
|
|
||||||
|
|
||||||
|
|
||||||
/* Undo actions limit: if < 1 then no limits */
|
/* Undo actions limit: if < 1 then no limits */
|
||||||
DEFINE_INT_PREF (undo_actions_limit,
|
DEFINE_INT_PREF (undo_actions_limit,
|
||||||
GPM_UNDO_ACTIONS_LIMIT,
|
GPM_UNDO_ACTIONS_LIMIT)
|
||||||
GPM_DEFAULT_UNDO_ACTIONS_LIMIT)
|
|
||||||
|
|
||||||
static GtkWrapMode
|
static GtkWrapMode
|
||||||
get_wrap_mode_from_string (const gchar* str)
|
get_wrap_mode_from_string (const gchar* str)
|
||||||
|
@ -363,8 +299,7 @@ pluma_prefs_manager_get_wrap_mode (void)
|
||||||
|
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
str = pluma_prefs_manager_get_string (GPM_WRAP_MODE,
|
str = pluma_prefs_manager_get_string (GPM_WRAP_MODE);
|
||||||
GPM_DEFAULT_WRAP_MODE);
|
|
||||||
|
|
||||||
res = get_wrap_mode_from_string (str);
|
res = get_wrap_mode_from_string (str);
|
||||||
|
|
||||||
|
@ -409,28 +344,23 @@ pluma_prefs_manager_wrap_mode_can_set (void)
|
||||||
|
|
||||||
/* Tabs size */
|
/* Tabs size */
|
||||||
DEFINE_INT_PREF (tabs_size,
|
DEFINE_INT_PREF (tabs_size,
|
||||||
GPM_TABS_SIZE,
|
GPM_TABS_SIZE)
|
||||||
GPM_DEFAULT_TABS_SIZE)
|
|
||||||
|
|
||||||
/* Insert spaces */
|
/* Insert spaces */
|
||||||
DEFINE_BOOL_PREF (insert_spaces,
|
DEFINE_BOOL_PREF (insert_spaces,
|
||||||
GPM_INSERT_SPACES,
|
GPM_INSERT_SPACES)
|
||||||
GPM_DEFAULT_INSERT_SPACES)
|
|
||||||
|
|
||||||
/* Auto indent */
|
/* Auto indent */
|
||||||
DEFINE_BOOL_PREF (auto_indent,
|
DEFINE_BOOL_PREF (auto_indent,
|
||||||
GPM_AUTO_INDENT,
|
GPM_AUTO_INDENT)
|
||||||
GPM_DEFAULT_AUTO_INDENT)
|
|
||||||
|
|
||||||
/* Display line numbers */
|
/* Display line numbers */
|
||||||
DEFINE_BOOL_PREF (display_line_numbers,
|
DEFINE_BOOL_PREF (display_line_numbers,
|
||||||
GPM_DISPLAY_LINE_NUMBERS,
|
GPM_DISPLAY_LINE_NUMBERS)
|
||||||
GPM_DEFAULT_DISPLAY_LINE_NUMBERS)
|
|
||||||
|
|
||||||
/* Toolbar visibility */
|
/* Toolbar visibility */
|
||||||
DEFINE_BOOL_PREF (toolbar_visible,
|
DEFINE_BOOL_PREF (toolbar_visible,
|
||||||
GPM_TOOLBAR_VISIBLE,
|
GPM_TOOLBAR_VISIBLE)
|
||||||
GPM_DEFAULT_TOOLBAR_VISIBLE)
|
|
||||||
|
|
||||||
|
|
||||||
/* Toolbar suttons style */
|
/* Toolbar suttons style */
|
||||||
|
@ -442,8 +372,7 @@ pluma_prefs_manager_get_toolbar_buttons_style (void)
|
||||||
|
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
str = pluma_prefs_manager_get_string (GPM_TOOLBAR_BUTTONS_STYLE,
|
str = pluma_prefs_manager_get_string (GPM_TOOLBAR_BUTTONS_STYLE);
|
||||||
GPM_DEFAULT_TOOLBAR_BUTTONS_STYLE);
|
|
||||||
|
|
||||||
if (strcmp (str, "PLUMA_TOOLBAR_ICONS") == 0)
|
if (strcmp (str, "PLUMA_TOOLBAR_ICONS") == 0)
|
||||||
res = PLUMA_TOOLBAR_ICONS;
|
res = PLUMA_TOOLBAR_ICONS;
|
||||||
|
@ -505,28 +434,23 @@ pluma_prefs_manager_toolbar_buttons_style_can_set (void)
|
||||||
|
|
||||||
/* Statusbar visiblity */
|
/* Statusbar visiblity */
|
||||||
DEFINE_BOOL_PREF (statusbar_visible,
|
DEFINE_BOOL_PREF (statusbar_visible,
|
||||||
GPM_STATUSBAR_VISIBLE,
|
GPM_STATUSBAR_VISIBLE)
|
||||||
GPM_DEFAULT_STATUSBAR_VISIBLE)
|
|
||||||
|
|
||||||
/* Side Pane visiblity */
|
/* Side Pane visiblity */
|
||||||
DEFINE_BOOL_PREF (side_pane_visible,
|
DEFINE_BOOL_PREF (side_pane_visible,
|
||||||
GPM_SIDE_PANE_VISIBLE,
|
GPM_SIDE_PANE_VISIBLE)
|
||||||
GPM_DEFAULT_SIDE_PANE_VISIBLE)
|
|
||||||
|
|
||||||
/* Bottom Panel visiblity */
|
/* Bottom Panel visiblity */
|
||||||
DEFINE_BOOL_PREF (bottom_panel_visible,
|
DEFINE_BOOL_PREF (bottom_panel_visible,
|
||||||
GPM_BOTTOM_PANEL_VISIBLE,
|
GPM_BOTTOM_PANEL_VISIBLE)
|
||||||
GPM_DEFAULT_BOTTOM_PANEL_VISIBLE)
|
|
||||||
|
|
||||||
/* Print syntax highlighting */
|
/* Print syntax highlighting */
|
||||||
DEFINE_BOOL_PREF (print_syntax_hl,
|
DEFINE_BOOL_PREF (print_syntax_hl,
|
||||||
GPM_PRINT_SYNTAX,
|
GPM_PRINT_SYNTAX)
|
||||||
GPM_DEFAULT_PRINT_SYNTAX)
|
|
||||||
|
|
||||||
/* Print header */
|
/* Print header */
|
||||||
DEFINE_BOOL_PREF (print_header,
|
DEFINE_BOOL_PREF (print_header,
|
||||||
GPM_PRINT_HEADER,
|
GPM_PRINT_HEADER)
|
||||||
GPM_DEFAULT_PRINT_HEADER)
|
|
||||||
|
|
||||||
|
|
||||||
/* Print Wrap mode */
|
/* Print Wrap mode */
|
||||||
|
@ -538,8 +462,7 @@ pluma_prefs_manager_get_print_wrap_mode (void)
|
||||||
|
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
str = pluma_prefs_manager_get_string (GPM_PRINT_WRAP_MODE,
|
str = pluma_prefs_manager_get_string (GPM_PRINT_WRAP_MODE);
|
||||||
GPM_DEFAULT_PRINT_WRAP_MODE);
|
|
||||||
|
|
||||||
if (strcmp (str, "GTK_WRAP_NONE") == 0)
|
if (strcmp (str, "GTK_WRAP_NONE") == 0)
|
||||||
res = GTK_WRAP_NONE;
|
res = GTK_WRAP_NONE;
|
||||||
|
@ -590,53 +513,91 @@ pluma_prefs_manager_print_wrap_mode_can_set (void)
|
||||||
|
|
||||||
/* Print line numbers */
|
/* Print line numbers */
|
||||||
DEFINE_INT_PREF (print_line_numbers,
|
DEFINE_INT_PREF (print_line_numbers,
|
||||||
GPM_PRINT_LINE_NUMBERS,
|
GPM_PRINT_LINE_NUMBERS)
|
||||||
GPM_DEFAULT_PRINT_LINE_NUMBERS)
|
|
||||||
|
|
||||||
/* Printing fonts */
|
/* Printing fonts */
|
||||||
DEFINE_STRING_PREF (print_font_body,
|
DEFINE_STRING_PREF (print_font_body,
|
||||||
GPM_PRINT_FONT_BODY,
|
GPM_PRINT_FONT_BODY)
|
||||||
GPM_DEFAULT_PRINT_FONT_BODY)
|
|
||||||
|
|
||||||
const gchar *
|
gchar *
|
||||||
|
pluma_prefs_manager_get_default_string_value (const gchar *key)
|
||||||
|
{
|
||||||
|
gchar *font = NULL;
|
||||||
|
g_settings_delay (pluma_prefs_manager->settings);
|
||||||
|
g_settings_reset (pluma_prefs_manager->settings, key);
|
||||||
|
font = g_settings_get_string (pluma_prefs_manager->settings, key);
|
||||||
|
g_settings_revert (pluma_prefs_manager->settings);
|
||||||
|
return font;
|
||||||
|
}
|
||||||
|
|
||||||
|
gchar *
|
||||||
pluma_prefs_manager_get_default_print_font_body (void)
|
pluma_prefs_manager_get_default_print_font_body (void)
|
||||||
{
|
{
|
||||||
return GPM_DEFAULT_PRINT_FONT_BODY;
|
return pluma_prefs_manager_get_default_string_value (GPM_PRINT_FONT_BODY);
|
||||||
}
|
}
|
||||||
|
|
||||||
DEFINE_STRING_PREF (print_font_header,
|
DEFINE_STRING_PREF (print_font_header,
|
||||||
GPM_PRINT_FONT_HEADER,
|
GPM_PRINT_FONT_HEADER)
|
||||||
GPM_DEFAULT_PRINT_FONT_HEADER)
|
|
||||||
|
|
||||||
const gchar *
|
gchar *
|
||||||
pluma_prefs_manager_get_default_print_font_header (void)
|
pluma_prefs_manager_get_default_print_font_header (void)
|
||||||
{
|
{
|
||||||
return GPM_DEFAULT_PRINT_FONT_HEADER;
|
return pluma_prefs_manager_get_default_string_value (GPM_PRINT_FONT_HEADER);
|
||||||
}
|
}
|
||||||
|
|
||||||
DEFINE_STRING_PREF (print_font_numbers,
|
DEFINE_STRING_PREF (print_font_numbers,
|
||||||
GPM_PRINT_FONT_NUMBERS,
|
GPM_PRINT_FONT_NUMBERS)
|
||||||
GPM_DEFAULT_PRINT_FONT_NUMBERS)
|
|
||||||
|
|
||||||
const gchar *
|
gchar *
|
||||||
pluma_prefs_manager_get_default_print_font_numbers (void)
|
pluma_prefs_manager_get_default_print_font_numbers (void)
|
||||||
{
|
{
|
||||||
return GPM_DEFAULT_PRINT_FONT_NUMBERS;
|
return pluma_prefs_manager_get_default_string_value (GPM_PRINT_FONT_NUMBERS);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Max number of files in "Recent Files" menu.
|
/* Max number of files in "Recent Files" menu.
|
||||||
* This is configurable only using mateconftool or mateconf-editor
|
* This is configurable only using gsettings, dconf or dconf-editor
|
||||||
*/
|
*/
|
||||||
gint
|
gint
|
||||||
pluma_prefs_manager_get_max_recents (void)
|
pluma_prefs_manager_get_max_recents (void)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
return pluma_prefs_manager_get_int (GPM_MAX_RECENTS,
|
return pluma_prefs_manager_get_int (GPM_MAX_RECENTS);
|
||||||
GPM_DEFAULT_MAX_RECENTS);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* GSettings/GSList utility functions from mate-panel */
|
||||||
|
|
||||||
|
GSList*
|
||||||
|
pluma_prefs_manager_get_gslist (GSettings *settings, const gchar *key)
|
||||||
|
{
|
||||||
|
gchar **array;
|
||||||
|
GSList *list = NULL;
|
||||||
|
gint i;
|
||||||
|
array = g_settings_get_strv (settings, key);
|
||||||
|
if (array != NULL) {
|
||||||
|
for (i = 0; array[i]; i++) {
|
||||||
|
list = g_slist_append (list, g_strdup (array[i]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
g_strfreev (array);
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
pluma_prefs_manager_set_gslist (GSettings *settings, const gchar *key, GSList *list)
|
||||||
|
{
|
||||||
|
GArray *array;
|
||||||
|
GSList *l;
|
||||||
|
array = g_array_new (TRUE, TRUE, sizeof (gchar *));
|
||||||
|
for (l = list; l; l = l->next) {
|
||||||
|
array = g_array_append_val (array, l->data);
|
||||||
|
}
|
||||||
|
g_settings_set_strv (settings, key, (const gchar **) array->data);
|
||||||
|
g_array_free (array, TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Encodings */
|
/* Encodings */
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
@ -663,28 +624,9 @@ pluma_prefs_manager_get_auto_detected_encodings (void)
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager->settings != NULL, NULL);
|
||||||
|
|
||||||
strings = mateconf_client_get_list (pluma_prefs_manager->mateconf_client,
|
strings = pluma_prefs_manager_get_gslist (pluma_prefs_manager->settings, GPM_AUTO_DETECTED_ENCODINGS);
|
||||||
GPM_AUTO_DETECTED_ENCODINGS,
|
|
||||||
MATECONF_VALUE_STRING,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
if (strings == NULL)
|
|
||||||
{
|
|
||||||
gint i = 0;
|
|
||||||
const gchar* s[] = GPM_DEFAULT_AUTO_DETECTED_ENCODINGS;
|
|
||||||
|
|
||||||
while (s[i] != NULL)
|
|
||||||
{
|
|
||||||
strings = g_slist_prepend (strings, g_strdup (s[i]));
|
|
||||||
|
|
||||||
++i;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
strings = g_slist_reverse (strings);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (strings != NULL)
|
if (strings != NULL)
|
||||||
{
|
{
|
||||||
|
@ -733,12 +675,9 @@ pluma_prefs_manager_get_shown_in_menu_encodings (void)
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager->settings != NULL, NULL);
|
||||||
|
|
||||||
strings = mateconf_client_get_list (pluma_prefs_manager->mateconf_client,
|
strings = pluma_prefs_manager_get_gslist (pluma_prefs_manager->settings, GPM_SHOWN_IN_MENU_ENCODINGS);
|
||||||
GPM_SHOWN_IN_MENU_ENCODINGS,
|
|
||||||
MATECONF_VALUE_STRING,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
if (strings != NULL)
|
if (strings != NULL)
|
||||||
{
|
{
|
||||||
|
@ -781,7 +720,7 @@ pluma_prefs_manager_set_shown_in_menu_encodings (const GSList *encs)
|
||||||
GSList *list = NULL;
|
GSList *list = NULL;
|
||||||
|
|
||||||
g_return_if_fail (pluma_prefs_manager != NULL);
|
g_return_if_fail (pluma_prefs_manager != NULL);
|
||||||
g_return_if_fail (pluma_prefs_manager->mateconf_client != NULL);
|
g_return_if_fail (pluma_prefs_manager->settings != NULL);
|
||||||
g_return_if_fail (pluma_prefs_manager_shown_in_menu_encodings_can_set ());
|
g_return_if_fail (pluma_prefs_manager_shown_in_menu_encodings_can_set ());
|
||||||
|
|
||||||
while (encs != NULL)
|
while (encs != NULL)
|
||||||
|
@ -800,12 +739,8 @@ pluma_prefs_manager_set_shown_in_menu_encodings (const GSList *encs)
|
||||||
}
|
}
|
||||||
|
|
||||||
list = g_slist_reverse (list);
|
list = g_slist_reverse (list);
|
||||||
|
|
||||||
mateconf_client_set_list (pluma_prefs_manager->mateconf_client,
|
pluma_prefs_manager_set_gslist (pluma_prefs_manager->settings, GPM_SHOWN_IN_MENU_ENCODINGS, list);
|
||||||
GPM_SHOWN_IN_MENU_ENCODINGS,
|
|
||||||
MATECONF_VALUE_STRING,
|
|
||||||
list,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
g_slist_free (list);
|
g_slist_free (list);
|
||||||
}
|
}
|
||||||
|
@ -821,23 +756,19 @@ pluma_prefs_manager_shown_in_menu_encodings_can_set (void)
|
||||||
|
|
||||||
/* Highlight current line */
|
/* Highlight current line */
|
||||||
DEFINE_BOOL_PREF (highlight_current_line,
|
DEFINE_BOOL_PREF (highlight_current_line,
|
||||||
GPM_HIGHLIGHT_CURRENT_LINE,
|
GPM_HIGHLIGHT_CURRENT_LINE)
|
||||||
GPM_DEFAULT_HIGHLIGHT_CURRENT_LINE)
|
|
||||||
|
|
||||||
/* Highlight matching bracket */
|
/* Highlight matching bracket */
|
||||||
DEFINE_BOOL_PREF (bracket_matching,
|
DEFINE_BOOL_PREF (bracket_matching,
|
||||||
GPM_BRACKET_MATCHING,
|
GPM_BRACKET_MATCHING)
|
||||||
GPM_DEFAULT_BRACKET_MATCHING)
|
|
||||||
|
|
||||||
/* Display Right Margin */
|
/* Display Right Margin */
|
||||||
DEFINE_BOOL_PREF (display_right_margin,
|
DEFINE_BOOL_PREF (display_right_margin,
|
||||||
GPM_DISPLAY_RIGHT_MARGIN,
|
GPM_DISPLAY_RIGHT_MARGIN)
|
||||||
GPM_DEFAULT_DISPLAY_RIGHT_MARGIN)
|
|
||||||
|
|
||||||
/* Right Margin Position */
|
/* Right Margin Position */
|
||||||
DEFINE_INT_PREF (right_margin_position,
|
DEFINE_INT_PREF (right_margin_position,
|
||||||
GPM_RIGHT_MARGIN_POSITION,
|
GPM_RIGHT_MARGIN_POSITION)
|
||||||
GPM_DEFAULT_RIGHT_MARGIN_POSITION)
|
|
||||||
|
|
||||||
static GtkSourceSmartHomeEndType
|
static GtkSourceSmartHomeEndType
|
||||||
get_smart_home_end_from_string (const gchar *str)
|
get_smart_home_end_from_string (const gchar *str)
|
||||||
|
@ -866,8 +797,7 @@ pluma_prefs_manager_get_smart_home_end (void)
|
||||||
|
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
str = pluma_prefs_manager_get_string (GPM_SMART_HOME_END,
|
str = pluma_prefs_manager_get_string (GPM_SMART_HOME_END);
|
||||||
GPM_DEFAULT_SMART_HOME_END);
|
|
||||||
|
|
||||||
res = get_smart_home_end_from_string (str);
|
res = get_smart_home_end_from_string (str);
|
||||||
|
|
||||||
|
@ -914,18 +844,15 @@ pluma_prefs_manager_smart_home_end_can_set (void)
|
||||||
|
|
||||||
/* Enable syntax highlighting */
|
/* Enable syntax highlighting */
|
||||||
DEFINE_BOOL_PREF (enable_syntax_highlighting,
|
DEFINE_BOOL_PREF (enable_syntax_highlighting,
|
||||||
GPM_SYNTAX_HL_ENABLE,
|
GPM_SYNTAX_HL_ENABLE)
|
||||||
GPM_DEFAULT_SYNTAX_HL_ENABLE)
|
|
||||||
|
|
||||||
/* Enable search highlighting */
|
/* Enable search highlighting */
|
||||||
DEFINE_BOOL_PREF (enable_search_highlighting,
|
DEFINE_BOOL_PREF (enable_search_highlighting,
|
||||||
GPM_SEARCH_HIGHLIGHTING_ENABLE,
|
GPM_SEARCH_HIGHLIGHTING_ENABLE)
|
||||||
GPM_DEFAULT_SEARCH_HIGHLIGHTING_ENABLE)
|
|
||||||
|
|
||||||
/* Source style scheme */
|
/* Source style scheme */
|
||||||
DEFINE_STRING_PREF (source_style_scheme,
|
DEFINE_STRING_PREF (source_style_scheme,
|
||||||
GPM_SOURCE_STYLE_SCHEME,
|
GPM_SOURCE_STYLE_SCHEME)
|
||||||
GPM_DEFAULT_SOURCE_STYLE_SCHEME)
|
|
||||||
|
|
||||||
GSList *
|
GSList *
|
||||||
pluma_prefs_manager_get_writable_vfs_schemes (void)
|
pluma_prefs_manager_get_writable_vfs_schemes (void)
|
||||||
|
@ -935,27 +862,9 @@ pluma_prefs_manager_get_writable_vfs_schemes (void)
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager->settings != NULL, NULL);
|
||||||
|
|
||||||
strings = mateconf_client_get_list (pluma_prefs_manager->mateconf_client,
|
strings = pluma_prefs_manager_get_gslist (pluma_prefs_manager->settings, GPM_WRITABLE_VFS_SCHEMES);
|
||||||
GPM_WRITABLE_VFS_SCHEMES,
|
|
||||||
MATECONF_VALUE_STRING,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
if (strings == NULL)
|
|
||||||
{
|
|
||||||
gint i = 0;
|
|
||||||
const gchar* s[] = GPM_DEFAULT_WRITABLE_VFS_SCHEMES;
|
|
||||||
|
|
||||||
while (s[i] != NULL)
|
|
||||||
{
|
|
||||||
strings = g_slist_prepend (strings, g_strdup (s[i]));
|
|
||||||
|
|
||||||
++i;
|
|
||||||
}
|
|
||||||
|
|
||||||
strings = g_slist_reverse (strings);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* The 'file' scheme is writable by default. */
|
/* The 'file' scheme is writable by default. */
|
||||||
strings = g_slist_prepend (strings, g_strdup ("file"));
|
strings = g_slist_prepend (strings, g_strdup ("file"));
|
||||||
|
@ -970,8 +879,7 @@ pluma_prefs_manager_get_restore_cursor_position (void)
|
||||||
{
|
{
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
return pluma_prefs_manager_get_bool (GPM_RESTORE_CURSOR_POSITION,
|
return pluma_prefs_manager_get_bool (GPM_RESTORE_CURSOR_POSITION);
|
||||||
GPM_DEFAULT_RESTORE_CURSOR_POSITION);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Plugins: we just store/return a list of strings, all the magic has to
|
/* Plugins: we just store/return a list of strings, all the magic has to
|
||||||
|
@ -985,12 +893,9 @@ pluma_prefs_manager_get_active_plugins (void)
|
||||||
pluma_debug (DEBUG_PREFS);
|
pluma_debug (DEBUG_PREFS);
|
||||||
|
|
||||||
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager != NULL, NULL);
|
||||||
g_return_val_if_fail (pluma_prefs_manager->mateconf_client != NULL, NULL);
|
g_return_val_if_fail (pluma_prefs_manager->settings != NULL, NULL);
|
||||||
|
|
||||||
plugins = mateconf_client_get_list (pluma_prefs_manager->mateconf_client,
|
plugins = pluma_prefs_manager_get_gslist (pluma_prefs_manager->settings, GPM_ACTIVE_PLUGINS);
|
||||||
GPM_ACTIVE_PLUGINS,
|
|
||||||
MATECONF_VALUE_STRING,
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
return plugins;
|
return plugins;
|
||||||
}
|
}
|
||||||
|
@ -999,14 +904,10 @@ void
|
||||||
pluma_prefs_manager_set_active_plugins (const GSList *plugins)
|
pluma_prefs_manager_set_active_plugins (const GSList *plugins)
|
||||||
{
|
{
|
||||||
g_return_if_fail (pluma_prefs_manager != NULL);
|
g_return_if_fail (pluma_prefs_manager != NULL);
|
||||||
g_return_if_fail (pluma_prefs_manager->mateconf_client != NULL);
|
g_return_if_fail (pluma_prefs_manager->settings != NULL);
|
||||||
g_return_if_fail (pluma_prefs_manager_active_plugins_can_set ());
|
g_return_if_fail (pluma_prefs_manager_active_plugins_can_set ());
|
||||||
|
|
||||||
mateconf_client_set_list (pluma_prefs_manager->mateconf_client,
|
pluma_prefs_manager_set_gslist (pluma_prefs_manager->settings, GPM_ACTIVE_PLUGINS, (GSList *) plugins);
|
||||||
GPM_ACTIVE_PLUGINS,
|
|
||||||
MATECONF_VALUE_STRING,
|
|
||||||
(GSList *) plugins,
|
|
||||||
NULL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
gboolean
|
gboolean
|
||||||
|
@ -1024,218 +925,17 @@ pluma_prefs_manager_get_lockdown (void)
|
||||||
{
|
{
|
||||||
guint lockdown = 0;
|
guint lockdown = 0;
|
||||||
|
|
||||||
if (pluma_prefs_manager_get_bool (GPM_LOCKDOWN_COMMAND_LINE, FALSE))
|
if (g_settings_get_boolean (pluma_prefs_manager->lockdown_settings, GPM_LOCKDOWN_COMMAND_LINE))
|
||||||
lockdown |= PLUMA_LOCKDOWN_COMMAND_LINE;
|
lockdown |= PLUMA_LOCKDOWN_COMMAND_LINE;
|
||||||
|
|
||||||
if (pluma_prefs_manager_get_bool (GPM_LOCKDOWN_PRINTING, FALSE))
|
if (g_settings_get_boolean (pluma_prefs_manager->lockdown_settings, GPM_LOCKDOWN_PRINTING))
|
||||||
lockdown |= PLUMA_LOCKDOWN_PRINTING;
|
lockdown |= PLUMA_LOCKDOWN_PRINTING;
|
||||||
|
|
||||||
if (pluma_prefs_manager_get_bool (GPM_LOCKDOWN_PRINT_SETUP, FALSE))
|
if (g_settings_get_boolean (pluma_prefs_manager->lockdown_settings, GPM_LOCKDOWN_PRINT_SETUP))
|
||||||
lockdown |= PLUMA_LOCKDOWN_PRINT_SETUP;
|
lockdown |= PLUMA_LOCKDOWN_PRINT_SETUP;
|
||||||
|
|
||||||
if (pluma_prefs_manager_get_bool (GPM_LOCKDOWN_SAVE_TO_DISK, FALSE))
|
if (g_settings_get_boolean (pluma_prefs_manager->lockdown_settings, GPM_LOCKDOWN_SAVE_TO_DISK))
|
||||||
lockdown |= PLUMA_LOCKDOWN_SAVE_TO_DISK;
|
lockdown |= PLUMA_LOCKDOWN_SAVE_TO_DISK;
|
||||||
|
|
||||||
return lockdown;
|
return lockdown;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The following functions are taken from mateconf-client.c
|
|
||||||
* and partially modified.
|
|
||||||
* The licensing terms on these is:
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* MateConf
|
|
||||||
* Copyright (C) 1999, 2000, 2000 Red Hat Inc.
|
|
||||||
*
|
|
||||||
* This library is free software; you can redistribute it and/or
|
|
||||||
* modify it under the terms of the GNU Library General Public
|
|
||||||
* License as published by the Free Software Foundation; either
|
|
||||||
* version 2 of the License, or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This library is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
* Library General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU Library General Public
|
|
||||||
* License along with this library; if not, write to the
|
|
||||||
* Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
|
|
||||||
* Boston, MA 02110-1301, USA.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
static const gchar*
|
|
||||||
mateconf_value_type_to_string(MateConfValueType type)
|
|
||||||
{
|
|
||||||
switch (type)
|
|
||||||
{
|
|
||||||
case MATECONF_VALUE_INT:
|
|
||||||
return "int";
|
|
||||||
break;
|
|
||||||
case MATECONF_VALUE_STRING:
|
|
||||||
return "string";
|
|
||||||
break;
|
|
||||||
case MATECONF_VALUE_FLOAT:
|
|
||||||
return "float";
|
|
||||||
break;
|
|
||||||
case MATECONF_VALUE_BOOL:
|
|
||||||
return "bool";
|
|
||||||
break;
|
|
||||||
case MATECONF_VALUE_SCHEMA:
|
|
||||||
return "schema";
|
|
||||||
break;
|
|
||||||
case MATECONF_VALUE_LIST:
|
|
||||||
return "list";
|
|
||||||
break;
|
|
||||||
case MATECONF_VALUE_PAIR:
|
|
||||||
return "pair";
|
|
||||||
break;
|
|
||||||
case MATECONF_VALUE_INVALID:
|
|
||||||
return "*invalid*";
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
g_return_val_if_reached (NULL);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Emit the proper signals for the error, and fill in err */
|
|
||||||
static gboolean
|
|
||||||
handle_error (MateConfClient* client, GError* error, GError** err)
|
|
||||||
{
|
|
||||||
if (error != NULL)
|
|
||||||
{
|
|
||||||
mateconf_client_error(client, error);
|
|
||||||
|
|
||||||
if (err == NULL)
|
|
||||||
{
|
|
||||||
mateconf_client_unreturned_error(client, error);
|
|
||||||
|
|
||||||
g_error_free(error);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
*err = error;
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
static gboolean
|
|
||||||
check_type (const gchar* key, MateConfValue* val, MateConfValueType t, GError** err)
|
|
||||||
{
|
|
||||||
if (val->type != t)
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
mateconf_set_error(err, MATECONF_ERROR_TYPE_MISMATCH,
|
|
||||||
_("Expected `%s' got, `%s' for key %s"),
|
|
||||||
mateconf_value_type_to_string(t),
|
|
||||||
mateconf_value_type_to_string(val->type),
|
|
||||||
key);
|
|
||||||
*/
|
|
||||||
g_set_error (err, MATECONF_ERROR, MATECONF_ERROR_TYPE_MISMATCH,
|
|
||||||
_("Expected `%s', got `%s' for key %s"),
|
|
||||||
mateconf_value_type_to_string(t),
|
|
||||||
mateconf_value_type_to_string(val->type),
|
|
||||||
key);
|
|
||||||
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
static gboolean
|
|
||||||
mateconf_client_get_bool_with_default (MateConfClient* client, const gchar* key,
|
|
||||||
gboolean def, GError** err)
|
|
||||||
{
|
|
||||||
GError* error = NULL;
|
|
||||||
MateConfValue* val;
|
|
||||||
|
|
||||||
g_return_val_if_fail (err == NULL || *err == NULL, def);
|
|
||||||
|
|
||||||
val = mateconf_client_get (client, key, &error);
|
|
||||||
|
|
||||||
if (val != NULL)
|
|
||||||
{
|
|
||||||
gboolean retval = def;
|
|
||||||
|
|
||||||
g_return_val_if_fail (error == NULL, retval);
|
|
||||||
|
|
||||||
if (check_type (key, val, MATECONF_VALUE_BOOL, &error))
|
|
||||||
retval = mateconf_value_get_bool (val);
|
|
||||||
else
|
|
||||||
handle_error (client, error, err);
|
|
||||||
|
|
||||||
mateconf_value_free (val);
|
|
||||||
|
|
||||||
return retval;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (error != NULL)
|
|
||||||
handle_error (client, error, err);
|
|
||||||
return def;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static gchar*
|
|
||||||
mateconf_client_get_string_with_default (MateConfClient* client, const gchar* key,
|
|
||||||
const gchar* def, GError** err)
|
|
||||||
{
|
|
||||||
GError* error = NULL;
|
|
||||||
gchar* val;
|
|
||||||
|
|
||||||
g_return_val_if_fail (err == NULL || *err == NULL, def ? g_strdup (def) : NULL);
|
|
||||||
|
|
||||||
val = mateconf_client_get_string (client, key, &error);
|
|
||||||
|
|
||||||
if (val != NULL)
|
|
||||||
{
|
|
||||||
g_return_val_if_fail (error == NULL, def ? g_strdup (def) : NULL);
|
|
||||||
|
|
||||||
return val;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (error != NULL)
|
|
||||||
handle_error (client, error, err);
|
|
||||||
return def ? g_strdup (def) : NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static gint
|
|
||||||
mateconf_client_get_int_with_default (MateConfClient* client, const gchar* key,
|
|
||||||
gint def, GError** err)
|
|
||||||
{
|
|
||||||
GError* error = NULL;
|
|
||||||
MateConfValue* val;
|
|
||||||
|
|
||||||
g_return_val_if_fail (err == NULL || *err == NULL, def);
|
|
||||||
|
|
||||||
val = mateconf_client_get (client, key, &error);
|
|
||||||
|
|
||||||
if (val != NULL)
|
|
||||||
{
|
|
||||||
gint retval = def;
|
|
||||||
|
|
||||||
g_return_val_if_fail (error == NULL, def);
|
|
||||||
|
|
||||||
if (check_type (key, val, MATECONF_VALUE_INT, &error))
|
|
||||||
retval = mateconf_value_get_int(val);
|
|
||||||
else
|
|
||||||
handle_error (client, error, err);
|
|
||||||
|
|
||||||
mateconf_value_free (val);
|
|
||||||
|
|
||||||
return retval;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (error != NULL)
|
|
||||||
handle_error (client, error, err);
|
|
||||||
return def;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
|
@ -35,184 +35,92 @@
|
||||||
#include <gtksourceview/gtksourceview.h>
|
#include <gtksourceview/gtksourceview.h>
|
||||||
#include "pluma-app.h"
|
#include "pluma-app.h"
|
||||||
|
|
||||||
#define PLUMA_BASE_KEY "/apps/pluma"
|
#define PLUMA_SCHEMA "org.mate.pluma"
|
||||||
|
|
||||||
#define GPM_PREFS_DIR PLUMA_BASE_KEY "/preferences"
|
|
||||||
|
|
||||||
/* Editor */
|
/* Editor */
|
||||||
#define GPM_FONT_DIR GPM_PREFS_DIR "/editor/font"
|
#define GPM_USE_DEFAULT_FONT "use-default-font"
|
||||||
#define GPM_USE_DEFAULT_FONT GPM_FONT_DIR "/use_default_font"
|
#define GPM_EDITOR_FONT "editor-font"
|
||||||
#define GPM_EDITOR_FONT GPM_FONT_DIR "/editor_font"
|
|
||||||
#define GPM_SYSTEM_FONT "/desktop/mate/interface/monospace_font_name"
|
|
||||||
|
|
||||||
#define GPM_SAVE_DIR GPM_PREFS_DIR "/editor/save"
|
#define GPM_CREATE_BACKUP_COPY "create-backup-copy"
|
||||||
#define GPM_CREATE_BACKUP_COPY GPM_SAVE_DIR "/create_backup_copy"
|
|
||||||
|
|
||||||
#define GPM_AUTO_SAVE GPM_SAVE_DIR "/auto_save"
|
#define GPM_AUTO_SAVE "auto-save"
|
||||||
#define GPM_AUTO_SAVE_INTERVAL GPM_SAVE_DIR "/auto_save_interval"
|
#define GPM_AUTO_SAVE_INTERVAL "auto-save-interval"
|
||||||
|
|
||||||
#define GPM_UNDO_DIR GPM_PREFS_DIR "/editor/undo"
|
#define GPM_UNDO_ACTIONS_LIMIT "max-undo-actions"
|
||||||
#define GPM_UNDO_ACTIONS_LIMIT GPM_UNDO_DIR "/max_undo_actions"
|
|
||||||
|
|
||||||
#define GPM_WRAP_MODE_DIR GPM_PREFS_DIR "/editor/wrap_mode"
|
#define GPM_WRAP_MODE "wrap-mode"
|
||||||
#define GPM_WRAP_MODE GPM_WRAP_MODE_DIR "/wrap_mode"
|
|
||||||
|
|
||||||
#define GPM_TABS_DIR GPM_PREFS_DIR "/editor/tabs"
|
#define GPM_TABS_SIZE "tabs-size"
|
||||||
#define GPM_TABS_SIZE GPM_TABS_DIR "/tabs_size"
|
#define GPM_INSERT_SPACES "insert-spaces"
|
||||||
#define GPM_INSERT_SPACES GPM_TABS_DIR "/insert_spaces"
|
|
||||||
|
|
||||||
#define GPM_AUTO_INDENT_DIR GPM_PREFS_DIR "/editor/auto_indent"
|
#define GPM_AUTO_INDENT "auto-indent"
|
||||||
#define GPM_AUTO_INDENT GPM_AUTO_INDENT_DIR "/auto_indent"
|
|
||||||
|
|
||||||
#define GPM_LINE_NUMBERS_DIR GPM_PREFS_DIR "/editor/line_numbers"
|
#define GPM_DISPLAY_LINE_NUMBERS "display-line-numbers"
|
||||||
#define GPM_DISPLAY_LINE_NUMBERS GPM_LINE_NUMBERS_DIR "/display_line_numbers"
|
|
||||||
|
|
||||||
#define GPM_CURRENT_LINE_DIR GPM_PREFS_DIR "/editor/current_line"
|
#define GPM_HIGHLIGHT_CURRENT_LINE "highlight-current-line"
|
||||||
#define GPM_HIGHLIGHT_CURRENT_LINE GPM_CURRENT_LINE_DIR "/highlight_current_line"
|
|
||||||
|
|
||||||
#define GPM_BRACKET_MATCHING_DIR GPM_PREFS_DIR "/editor/bracket_matching"
|
#define GPM_BRACKET_MATCHING "bracket-matching"
|
||||||
#define GPM_BRACKET_MATCHING GPM_BRACKET_MATCHING_DIR "/bracket_matching"
|
|
||||||
|
|
||||||
#define GPM_RIGHT_MARGIN_DIR GPM_PREFS_DIR "/editor/right_margin"
|
#define GPM_DISPLAY_RIGHT_MARGIN "display-right-margin"
|
||||||
#define GPM_DISPLAY_RIGHT_MARGIN GPM_RIGHT_MARGIN_DIR "/display_right_margin"
|
#define GPM_RIGHT_MARGIN_POSITION "right-margin-position"
|
||||||
#define GPM_RIGHT_MARGIN_POSITION GPM_RIGHT_MARGIN_DIR "/right_margin_position"
|
|
||||||
|
|
||||||
#define GPM_SMART_HOME_END_DIR GPM_PREFS_DIR "/editor/smart_home_end"
|
#define GPM_SMART_HOME_END "smart-home-end"
|
||||||
#define GPM_SMART_HOME_END GPM_SMART_HOME_END_DIR "/smart_home_end"
|
|
||||||
|
|
||||||
#define GPM_CURSOR_POSITION_DIR GPM_PREFS_DIR "/editor/cursor_position"
|
#define GPM_RESTORE_CURSOR_POSITION "restore-cursor-position"
|
||||||
#define GPM_RESTORE_CURSOR_POSITION GPM_CURSOR_POSITION_DIR "/restore_cursor_position"
|
|
||||||
|
|
||||||
#define GPM_SEARCH_HIGHLIGHTING_DIR GPM_PREFS_DIR "/editor/search_highlighting"
|
#define GPM_SEARCH_HIGHLIGHTING_ENABLE "enable-search-highlighting"
|
||||||
#define GPM_SEARCH_HIGHLIGHTING_ENABLE GPM_SEARCH_HIGHLIGHTING_DIR "/enable"
|
|
||||||
|
|
||||||
#define GPM_SOURCE_STYLE_DIR GPM_PREFS_DIR "/editor/colors"
|
#define GPM_SOURCE_STYLE_SCHEME "color-scheme"
|
||||||
#define GPM_SOURCE_STYLE_SCHEME GPM_SOURCE_STYLE_DIR "/scheme"
|
|
||||||
|
|
||||||
/* UI */
|
/* UI */
|
||||||
#define GPM_TOOLBAR_DIR GPM_PREFS_DIR "/ui/toolbar"
|
#define GPM_TOOLBAR_VISIBLE "toolbar-visible"
|
||||||
#define GPM_TOOLBAR_VISIBLE GPM_TOOLBAR_DIR "/toolbar_visible"
|
#define GPM_TOOLBAR_BUTTONS_STYLE "toolbar-buttons-style"
|
||||||
#define GPM_TOOLBAR_BUTTONS_STYLE GPM_TOOLBAR_DIR "/toolbar_buttons_style"
|
|
||||||
|
|
||||||
#define GPM_STATUSBAR_DIR GPM_PREFS_DIR "/ui/statusbar"
|
#define GPM_STATUSBAR_VISIBLE "statusbar-visible"
|
||||||
#define GPM_STATUSBAR_VISIBLE GPM_STATUSBAR_DIR "/statusbar_visible"
|
|
||||||
|
|
||||||
#define GPM_SIDE_PANE_DIR GPM_PREFS_DIR "/ui/side_pane"
|
#define GPM_SIDE_PANE_VISIBLE "side-pane-visible"
|
||||||
#define GPM_SIDE_PANE_VISIBLE GPM_SIDE_PANE_DIR "/side_pane_visible"
|
|
||||||
|
|
||||||
#define GPM_BOTTOM_PANEL_DIR GPM_PREFS_DIR "/ui/bottom_panel"
|
#define GPM_BOTTOM_PANEL_VISIBLE "bottom-panel-visible"
|
||||||
#define GPM_BOTTOM_PANEL_VISIBLE GPM_BOTTOM_PANEL_DIR "/bottom_panel_visible"
|
|
||||||
|
|
||||||
#define GPM_RECENTS_DIR GPM_PREFS_DIR "/ui/recents"
|
#define GPM_MAX_RECENTS "max-recents"
|
||||||
#define GPM_MAX_RECENTS GPM_RECENTS_DIR "/max_recents"
|
|
||||||
|
|
||||||
/* Print */
|
/* Print */
|
||||||
#define GPM_PRINT_PAGE_DIR GPM_PREFS_DIR "/print/page"
|
#define GPM_PRINT_SYNTAX "print-syntax-highlighting"
|
||||||
#define GPM_PRINT_SYNTAX GPM_PRINT_PAGE_DIR "/print_syntax_highlighting"
|
#define GPM_PRINT_HEADER "print-header"
|
||||||
#define GPM_PRINT_HEADER GPM_PRINT_PAGE_DIR "/print_header"
|
#define GPM_PRINT_WRAP_MODE "print-wrap-mode"
|
||||||
#define GPM_PRINT_WRAP_MODE GPM_PRINT_PAGE_DIR "/print_wrap_mode"
|
#define GPM_PRINT_LINE_NUMBERS "print-line-numbers"
|
||||||
#define GPM_PRINT_LINE_NUMBERS GPM_PRINT_PAGE_DIR "/print_line_numbers"
|
|
||||||
|
|
||||||
#define GPM_PRINT_FONT_DIR GPM_PREFS_DIR "/print/fonts"
|
#define GPM_PRINT_FONT_BODY "print-font-body-pango"
|
||||||
#define GPM_PRINT_FONT_BODY GPM_PRINT_FONT_DIR "/print_font_body_pango"
|
#define GPM_PRINT_FONT_HEADER "print-font-header-pango"
|
||||||
#define GPM_PRINT_FONT_HEADER GPM_PRINT_FONT_DIR "/print_font_header_pango"
|
#define GPM_PRINT_FONT_NUMBERS "print-font-numbers-pango"
|
||||||
#define GPM_PRINT_FONT_NUMBERS GPM_PRINT_FONT_DIR "/print_font_numbers_pango"
|
|
||||||
|
|
||||||
/* Encodings */
|
/* Encodings */
|
||||||
#define GPM_ENCODINGS_DIR GPM_PREFS_DIR "/encodings"
|
#define GPM_AUTO_DETECTED_ENCODINGS "auto-detected-encodings"
|
||||||
#define GPM_AUTO_DETECTED_ENCODINGS GPM_ENCODINGS_DIR "/auto_detected"
|
#define GPM_SHOWN_IN_MENU_ENCODINGS "shown-in-menu-encodings"
|
||||||
#define GPM_SHOWN_IN_MENU_ENCODINGS GPM_ENCODINGS_DIR "/shown_in_menu"
|
|
||||||
|
|
||||||
/* Syntax highlighting */
|
/* Syntax highlighting */
|
||||||
#define GPM_SYNTAX_HL_DIR GPM_PREFS_DIR "/syntax_highlighting"
|
#define GPM_SYNTAX_HL_ENABLE "enable-syntax-highlighting"
|
||||||
#define GPM_SYNTAX_HL_ENABLE GPM_SYNTAX_HL_DIR "/enable"
|
|
||||||
|
|
||||||
/* White list of writable mate-vfs methods */
|
/* White list of writable mate-vfs methods */
|
||||||
#define GPM_WRITABLE_VFS_SCHEMES GPM_SAVE_DIR "/writable_vfs_schemes"
|
#define GPM_WRITABLE_VFS_SCHEMES "writable-vfs-schemes"
|
||||||
|
|
||||||
/* Plugins */
|
/* Plugins */
|
||||||
#define GPM_PLUGINS_DIR PLUMA_BASE_KEY "/plugins"
|
#define GPM_ACTIVE_PLUGINS "active-plugins"
|
||||||
#define GPM_ACTIVE_PLUGINS GPM_PLUGINS_DIR "/active-plugins"
|
|
||||||
|
/* Global Interface keys */
|
||||||
|
#define GPM_INTERFACE_SCHEMA "org.mate.interface"
|
||||||
|
#define GPM_SYSTEM_FONT "monospace-font-name"
|
||||||
|
|
||||||
/* Global Lockdown keys */
|
/* Global Lockdown keys */
|
||||||
#define GPM_LOCKDOWN_DIR "/desktop/mate/lockdown"
|
#define GPM_LOCKDOWN_SCHEMA "org.mate.lockdown"
|
||||||
#define GPM_LOCKDOWN_COMMAND_LINE GPM_LOCKDOWN_DIR "/disable_command_line"
|
#define GPM_LOCKDOWN_COMMAND_LINE "disable-command-line"
|
||||||
#define GPM_LOCKDOWN_PRINTING GPM_LOCKDOWN_DIR "/disable_printing"
|
#define GPM_LOCKDOWN_PRINTING "disable-printing"
|
||||||
#define GPM_LOCKDOWN_PRINT_SETUP GPM_LOCKDOWN_DIR "/disable_print_setup"
|
#define GPM_LOCKDOWN_PRINT_SETUP "disable-print-setup"
|
||||||
#define GPM_LOCKDOWN_SAVE_TO_DISK GPM_LOCKDOWN_DIR "/disable_save_to_disk"
|
#define GPM_LOCKDOWN_SAVE_TO_DISK "disable-save-to-disk"
|
||||||
|
|
||||||
/* Fallback default values. Keep in sync with pluma.schemas */
|
/* Fallback default values. Keep in sync with org.mate.pluma.gschema.xml */
|
||||||
|
|
||||||
#define GPM_DEFAULT_USE_DEFAULT_FONT 1 /* TRUE */
|
|
||||||
|
|
||||||
#ifndef PLATFORM_OSX
|
|
||||||
#define GPM_DEFAULT_EDITOR_FONT (const gchar*) "Monospace 12"
|
|
||||||
#define GPM_DEFAULT_SYSTEM_FONT (const gchar*) "Monospace 10"
|
|
||||||
#else
|
|
||||||
#define GPM_DEFAULT_EDITOR_FONT (const gchar*) "Monaco 12"
|
|
||||||
#define GPM_DEFAULT_SYSTEM_FONT (const gchar*) "Monaco 12"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_CREATE_BACKUP_COPY 0 /* FALSE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_AUTO_SAVE 0 /* FALSE */
|
|
||||||
#define GPM_DEFAULT_AUTO_SAVE_INTERVAL 10 /* minutes */
|
#define GPM_DEFAULT_AUTO_SAVE_INTERVAL 10 /* minutes */
|
||||||
|
#define GPM_DEFAULT_MAX_RECENTS 5
|
||||||
#define GPM_DEFAULT_UNDO_ACTIONS_LIMIT 2000 /* actions */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_WRAP_MODE "GTK_WRAP_WORD"
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_TABS_SIZE 8
|
|
||||||
#define GPM_DEFAULT_INSERT_SPACES 0 /* FALSE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_AUTO_INDENT 0 /* FALSE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_DISPLAY_LINE_NUMBERS 0 /* FALSE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_AUTO_DETECTED_ENCODINGS {"UTF-8", "CURRENT", "ISO-8859-15", NULL}
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_TOOLBAR_VISIBLE 1 /* TRUE */
|
|
||||||
#define GPM_DEFAULT_TOOLBAR_BUTTONS_STYLE "PLUMA_TOOLBAR_SYSTEM"
|
|
||||||
#define GPM_DEFAULT_TOOLBAR_SHOW_TOOLTIPS 1 /* TRUE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_STATUSBAR_VISIBLE 1 /* TRUE */
|
|
||||||
#define GPM_DEFAULT_SIDE_PANE_VISIBLE 0 /* FALSE */
|
|
||||||
#define GPM_DEFAULT_BOTTOM_PANEL_VISIBLE 0 /* FALSE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_PRINT_SYNTAX 1 /* TRUE */
|
|
||||||
#define GPM_DEFAULT_PRINT_HEADER 1 /* TRUE */
|
|
||||||
#define GPM_DEFAULT_PRINT_WRAP_MODE "GTK_WRAP_WORD"
|
|
||||||
#define GPM_DEFAULT_PRINT_LINE_NUMBERS 0 /* No numbers */
|
|
||||||
|
|
||||||
#ifndef PLATFORM_OSX
|
|
||||||
#define GPM_DEFAULT_PRINT_FONT_BODY (const gchar*) "Monospace 9"
|
|
||||||
#else
|
|
||||||
#define GPM_DEFAULT_PRINT_FONT_BODY (const gchar*) "Monaco 10"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_PRINT_FONT_HEADER (const gchar*) "Sans 11"
|
|
||||||
#define GPM_DEFAULT_PRINT_FONT_NUMBERS (const gchar*) "Sans 8"
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_MAX_RECENTS 5
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_HIGHLIGHT_CURRENT_LINE 1 /* TRUE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_BRACKET_MATCHING 0 /* FALSE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_DISPLAY_RIGHT_MARGIN 0 /* FALSE */
|
|
||||||
#define GPM_DEFAULT_RIGHT_MARGIN_POSITION 80
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_SMART_HOME_END "AFTER"
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_SYNTAX_HL_ENABLE 1 /* TRUE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_WRITABLE_VFS_SCHEMES {"ssh", "sftp", "smb", "dav", "davs", NULL}
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_RESTORE_CURSOR_POSITION 1 /* TRUE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_SEARCH_HIGHLIGHTING_ENABLE 1 /* TRUE */
|
|
||||||
|
|
||||||
#define GPM_DEFAULT_SOURCE_STYLE_SCHEME "classic"
|
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
PLUMA_TOOLBAR_SYSTEM = 0,
|
PLUMA_TOOLBAR_SYSTEM = 0,
|
||||||
|
@ -337,22 +245,22 @@ gboolean pluma_prefs_manager_print_line_numbers_can_set (void);
|
||||||
gchar *pluma_prefs_manager_get_print_font_body (void);
|
gchar *pluma_prefs_manager_get_print_font_body (void);
|
||||||
void pluma_prefs_manager_set_print_font_body (const gchar *font);
|
void pluma_prefs_manager_set_print_font_body (const gchar *font);
|
||||||
gboolean pluma_prefs_manager_print_font_body_can_set (void);
|
gboolean pluma_prefs_manager_print_font_body_can_set (void);
|
||||||
const gchar *pluma_prefs_manager_get_default_print_font_body (void);
|
gchar *pluma_prefs_manager_get_default_print_font_body (void);
|
||||||
|
|
||||||
/* Font used to print headers */
|
/* Font used to print headers */
|
||||||
gchar *pluma_prefs_manager_get_print_font_header (void);
|
gchar *pluma_prefs_manager_get_print_font_header (void);
|
||||||
void pluma_prefs_manager_set_print_font_header (const gchar *font);
|
void pluma_prefs_manager_set_print_font_header (const gchar *font);
|
||||||
gboolean pluma_prefs_manager_print_font_header_can_set (void);
|
gboolean pluma_prefs_manager_print_font_header_can_set (void);
|
||||||
const gchar *pluma_prefs_manager_get_default_print_font_header (void);
|
gchar *pluma_prefs_manager_get_default_print_font_header (void);
|
||||||
|
|
||||||
/* Font used to print line numbers */
|
/* Font used to print line numbers */
|
||||||
gchar *pluma_prefs_manager_get_print_font_numbers (void);
|
gchar *pluma_prefs_manager_get_print_font_numbers (void);
|
||||||
void pluma_prefs_manager_set_print_font_numbers (const gchar *font);
|
void pluma_prefs_manager_set_print_font_numbers (const gchar *font);
|
||||||
gboolean pluma_prefs_manager_print_font_numbers_can_set (void);
|
gboolean pluma_prefs_manager_print_font_numbers_can_set (void);
|
||||||
const gchar *pluma_prefs_manager_get_default_print_font_numbers (void);
|
gchar *pluma_prefs_manager_get_default_print_font_numbers (void);
|
||||||
|
|
||||||
/* Max number of files in "Recent Files" menu.
|
/* Max number of files in "Recent Files" menu.
|
||||||
* This is configurable only using mateconftool or mateconf-editor
|
* This is configurable only using gsettings, dconf or dconf-editor
|
||||||
*/
|
*/
|
||||||
gint pluma_prefs_manager_get_max_recents (void);
|
gint pluma_prefs_manager_get_max_recents (void);
|
||||||
|
|
||||||
|
@ -418,6 +326,11 @@ gboolean pluma_prefs_manager_active_plugins_can_set (void);
|
||||||
/* Global lockdown */
|
/* Global lockdown */
|
||||||
PlumaLockdownMask pluma_prefs_manager_get_lockdown (void);
|
PlumaLockdownMask pluma_prefs_manager_get_lockdown (void);
|
||||||
|
|
||||||
|
/* GSettings utilities */
|
||||||
|
GSList* pluma_prefs_manager_get_gslist (GSettings *settings, const gchar *key);
|
||||||
|
void pluma_prefs_manager_set_gslist (GSettings *settings, const gchar *key, GSList *list);
|
||||||
|
|
||||||
|
|
||||||
#endif /* __PLUMA_PREFS_MANAGER_H__ */
|
#endif /* __PLUMA_PREFS_MANAGER_H__ */
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -269,35 +269,41 @@ restore_button_clicked (GtkButton *button,
|
||||||
{
|
{
|
||||||
if (pluma_prefs_manager_print_font_body_can_set ())
|
if (pluma_prefs_manager_print_font_body_can_set ())
|
||||||
{
|
{
|
||||||
const gchar *font;
|
gchar *font;
|
||||||
|
|
||||||
font = pluma_prefs_manager_get_default_print_font_body ();
|
font = pluma_prefs_manager_get_default_print_font_body ();
|
||||||
|
|
||||||
gtk_font_button_set_font_name (
|
gtk_font_button_set_font_name (
|
||||||
GTK_FONT_BUTTON (job->priv->body_fontbutton),
|
GTK_FONT_BUTTON (job->priv->body_fontbutton),
|
||||||
font);
|
font);
|
||||||
|
|
||||||
|
g_free (font);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pluma_prefs_manager_print_font_header_can_set ())
|
if (pluma_prefs_manager_print_font_header_can_set ())
|
||||||
{
|
{
|
||||||
const gchar *font;
|
gchar *font;
|
||||||
|
|
||||||
font = pluma_prefs_manager_get_default_print_font_header ();
|
font = pluma_prefs_manager_get_default_print_font_header ();
|
||||||
|
|
||||||
gtk_font_button_set_font_name (
|
gtk_font_button_set_font_name (
|
||||||
GTK_FONT_BUTTON (job->priv->headers_fontbutton),
|
GTK_FONT_BUTTON (job->priv->headers_fontbutton),
|
||||||
font);
|
font);
|
||||||
|
|
||||||
|
g_free (font);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pluma_prefs_manager_print_font_numbers_can_set ())
|
if (pluma_prefs_manager_print_font_numbers_can_set ())
|
||||||
{
|
{
|
||||||
const gchar *font;
|
gchar *font;
|
||||||
|
|
||||||
font = pluma_prefs_manager_get_default_print_font_numbers ();
|
font = pluma_prefs_manager_get_default_print_font_numbers ();
|
||||||
|
|
||||||
gtk_font_button_set_font_name (
|
gtk_font_button_set_font_name (
|
||||||
GTK_FONT_BUTTON (job->priv->numbers_fontbutton),
|
GTK_FONT_BUTTON (job->priv->numbers_fontbutton),
|
||||||
font);
|
font);
|
||||||
|
|
||||||
|
g_free (font);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue