Ejemplo n.º 1
0
static void setup_mateconf(PagerData* pager)
{
	MateConfClient* client;
	char* key;

	client = mateconf_client_get_default();

	key = mate_panel_applet_mateconf_get_full_key(MATE_PANEL_APPLET(pager->applet), "num_rows");
	pager->listeners[0] = mateconf_client_notify_add(client, key, (MateConfClientNotifyFunc) num_rows_changed, pager, NULL, NULL);

	g_free(key);


	key = mate_panel_applet_mateconf_get_full_key(MATE_PANEL_APPLET(pager->applet), "display_workspace_names");
	pager->listeners[1] = mateconf_client_notify_add(client, key, (MateConfClientNotifyFunc) display_workspace_names_changed, pager, NULL, NULL);

	g_free(key);

	key = mate_panel_applet_mateconf_get_full_key(MATE_PANEL_APPLET(pager->applet), "display_all_workspaces");
	pager->listeners[2] = mateconf_client_notify_add(client, key, (MateConfClientNotifyFunc) all_workspaces_changed, pager, NULL, NULL);

	g_free(key);

	g_object_unref(G_OBJECT(client));
}
void
mate_panel_applet_mateconf_set_int (MatePanelApplet  *applet,
			    const gchar  *key,
			    gint          the_int,
			    GError      **opt_error)
{
	MateConfClient  *client;
	gchar        *full_key;
	GError      **error = NULL;
	GError       *our_error = NULL;

	g_return_if_fail (PANEL_IS_APPLET (applet));

	if (opt_error)
		error = opt_error;
	else
		error = &our_error;

	full_key = mate_panel_applet_mateconf_get_full_key (applet, key);

	client = mate_panel_applet_mateconf_get_client ();

	mateconf_client_set_int (client, full_key, the_int, error);

	g_free (full_key);

	if (!opt_error && our_error) {
		g_warning (G_STRLOC ": mateconf error : '%s'", our_error->message);
		g_error_free (our_error);
	}
}
GSList *
mate_panel_applet_mateconf_get_list (MatePanelApplet     *applet,
			     const gchar     *key,
			     MateConfValueType   list_type,
			     GError         **opt_error)
{
	MateConfClient  *client;
	gchar        *full_key;
	GSList       *retval;
	GError      **error = NULL;
	GError       *our_error = NULL;

	g_return_val_if_fail (PANEL_IS_APPLET (applet), NULL);

	if (opt_error)
		error = opt_error;
	else
		error = &our_error;

	full_key = mate_panel_applet_mateconf_get_full_key (applet, key);

	client = mate_panel_applet_mateconf_get_client ();

	retval = mateconf_client_get_list (client, full_key, list_type, error);

	g_free (full_key);

	if (!opt_error && our_error) {
		g_warning (G_STRLOC ": mateconf error : '%s'", our_error->message);
		g_error_free (our_error);
	}

	return retval;
}
Ejemplo n.º 4
0
gboolean save_current_list(pqi inst)
{
	GError *err = NULL;
	psi iter; char key[16];
	MatePanelApplet *const applet = inst->applet;
	const gchar *fullkey;
	int maxkey = 0;
	
	mate_panel_applet_mateconf_set_int(applet,"mode",inst->mode, &err);
	if (err) return FALSE;
	
	mate_panel_applet_mateconf_set_bool(applet,"show-primary",inst->show_primary,&err);
	
	for (iter = inst->items; iter != NULL; iter = iter->next)
	{
		err = NULL;
		sprintf(key,"file%d",iter->id);
			mate_panel_applet_mateconf_set_string(applet,key,iter->file,&err);
		sprintf(key,"uses%d",iter->id);
			mate_panel_applet_mateconf_set_int(applet,key,iter->uses,&err);
		sprintf(key,"times%d",iter->id);
			mate_panel_applet_mateconf_set_int(applet,key,iter->lastaccess >> 32, &err);
		sprintf(key,"timeu%d",iter->id);
			mate_panel_applet_mateconf_set_int(applet,key,iter->lastaccess & 0xFFFFFFFF, &err);
		if (iter->id >= maxkey)
			maxkey = iter->id + 1;
	}
	sprintf(key,"file%d",maxkey);
	fullkey = mate_panel_applet_mateconf_get_full_key(applet,key);
	mateconf_client_unset(mateconf_client_get_default(),fullkey,NULL);
	return TRUE;
}
Ejemplo n.º 5
0
gboolean
mc_key_writable (MCData *mc, const char *key)
{
	gboolean writable;
	char *fullkey;
	static MateConfClient *client = NULL;
	if (client == NULL)
		client = mateconf_client_get_default ();

	fullkey = mate_panel_applet_mateconf_get_full_key (mc->applet, key);

	writable = mateconf_client_key_is_writable (client, fullkey, NULL);

	g_free (fullkey);

	return writable;
}
Ejemplo n.º 6
0
static void
setup_sensitivity(PagerData* pager, GtkBuilder* builder, const char* wid1, const char* wid2, const char* wid3, const char* key)
{
	MatePanelApplet* applet = MATE_PANEL_APPLET(pager->applet);
	MateConfClient* client = mateconf_client_get_default();
	char* fullkey;
	GtkWidget* w;

	if (key[0] == '/')
		fullkey = g_strdup(key);
	else
		fullkey = mate_panel_applet_mateconf_get_full_key(applet, key);

	if (mateconf_client_key_is_writable(client, fullkey, NULL))
	{
		g_object_unref(G_OBJECT(client));
		g_free(fullkey);
		return;
	}

	g_object_unref(G_OBJECT(client));
	g_free(fullkey);

	w = WID(wid1);
	g_assert(w != NULL);
	g_object_set_data(G_OBJECT(w), NEVER_SENSITIVE, GINT_TO_POINTER(1));
	gtk_widget_set_sensitive(w, FALSE);

	if (wid2 != NULL)
	{
		w = WID(wid2);
		g_assert(w != NULL);
		g_object_set_data(G_OBJECT(w), NEVER_SENSITIVE, GINT_TO_POINTER(1));
		gtk_widget_set_sensitive(w, FALSE);
	}

	if (wid3 != NULL)
	{
		w = WID(wid3);
		g_assert(w != NULL);
		g_object_set_data(G_OBJECT(w), NEVER_SENSITIVE, GINT_TO_POINTER(1));
		gtk_widget_set_sensitive(w, FALSE);
	}
}
Ejemplo n.º 7
0
static void
mc_setup_listeners (MCData *mc)
{
    MateConfClient *client;
    char        *key;
    int          i = 0;

    client = mateconf_client_get_default ();
    mateconf_client_add_dir (client, "/apps/mini-commander",
			  MATECONF_CLIENT_PRELOAD_ONELEVEL, NULL);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "show_default_theme");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) show_default_theme_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "autocomplete_history");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) auto_complete_history_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "normal_size_x");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) normal_size_x_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "normal_size_y");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) normal_size_y_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "cmd_line_color_fg_r");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) cmd_line_color_fg_r_changed,
                                mc,
                                NULL, NULL);
    g_free (key);


    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "cmd_line_color_fg_g");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) cmd_line_color_fg_g_changed,
                                mc,
                                NULL, NULL);
    g_free (key);


    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "cmd_line_color_fg_b");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) cmd_line_color_fg_b_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "cmd_line_color_bg_r");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) cmd_line_color_bg_r_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "cmd_line_color_bg_g");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) cmd_line_color_bg_g_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    key = mate_panel_applet_mateconf_get_full_key (MATE_PANEL_APPLET (mc->applet), "cmd_line_color_bg_b");
    mc->listeners [i++] = mateconf_client_notify_add (
				client, key,
				(MateConfClientNotifyFunc) cmd_line_color_bg_b_changed,
                                mc,
                                NULL, NULL);
    g_free (key);

    mc->listeners [i++] = mateconf_client_notify_add (
				client, "/apps/mini-commander/macro_patterns",
				(MateConfClientNotifyFunc) macros_changed,
                                mc,
                                NULL, NULL);

    mc->listeners [i++] = mateconf_client_notify_add (
				client, "/apps/mini-commander/macro_commands",
				(MateConfClientNotifyFunc) macros_changed,
                                mc,
                                NULL, NULL);

    g_assert (i == MC_NUM_LISTENERS);

    g_object_unref (client);
}