gnome-control-center/capplets/font/main.c
Jody Goldberg 422a93f0d2 new. (setup_dialog) : support help.
2002-05-08  Jody Goldberg <jody@gnome.org>

	* main.c (cb_dialog_response) : new.
	(setup_dialog) : support help.
2002-05-09 12:37:30 +00:00

104 lines
2.4 KiB
C

/* This program was written with lots of love under the GPL by Jonathan
* Blandford <jrb@gnome.org>
*/
#include <config.h>
#include <string.h>
#include <gtk/gtk.h>
#include <gconf/gconf-client.h>
#include <glade/glade.h>
#include "theme-common.h"
#include "capplet-util.h"
#include "activate-settings-daemon.h"
#include "gconf-property-editor.h"
#define GTK_FONT_KEY "/desktop/gnome/interface/font_name"
#define DESKTOP_FONT_NAME_KEY "/apps/nautilus/preferences/default_font"
#define DESKTOP_FONT_SIZE_KEY "/apps/nautilus/preferences/default_font_size"
static GladeXML *
create_dialog (void)
{
GladeXML *dialog;
dialog = glade_xml_new (GLADEDIR "/font-properties.glade", "font_dialog", NULL);
return dialog;
}
static void
cb_dialog_response (GtkDialog *dialog, gint response_id)
{
if (response_id == GTK_RESPONSE_HELP) {
GError *error = NULL;
/* TODO : get this written */
gnome_help_display_desktop (NULL,
"control-center-manual",
"config-font.xml",
"CONFIGURATION", &error);
if (error) {
g_warning ("help error: %s\n", error->message);
g_error_free (error);
}
} else
gtk_main_quit ();
}
static void
setup_dialog (GladeXML *dialog)
{
GConfClient *client;
GtkWidget *widget;
GObject *peditor;
client = gconf_client_get_default ();
gconf_client_add_dir (client, "/desktop/gnome/interface", GCONF_CLIENT_PRELOAD_ONELEVEL, NULL);
peditor = gconf_peditor_new_font (NULL, GTK_FONT_KEY,
WID ("application_font"),
PEDITOR_FONT_COMBINED, NULL);
peditor = gconf_peditor_new_font (NULL, DESKTOP_FONT_NAME_KEY,
WID ("desktop_font"),
PEDITOR_FONT_NAME, NULL);
peditor = gconf_peditor_new_font (NULL, DESKTOP_FONT_SIZE_KEY,
WID ("desktop_font"),
PEDITOR_FONT_SIZE, NULL);
widget = WID ("font_dialog");
gtk_widget_show (widget);
g_signal_connect (G_OBJECT (widget),
"response",
G_CALLBACK (cb_dialog_response), NULL);
}
int
main (int argc, char *argv[])
{
GladeXML *dialog;
gtk_init (&argc, &argv);
bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR);
bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
textdomain (GETTEXT_PACKAGE);
gnome_program_init (argv[0], VERSION, LIBGNOMEUI_MODULE, argc, argv,
GNOME_PARAM_APP_DATADIR, GNOMECC_DATA_DIR,
NULL);
activate_settings_daemon ();
dialog = create_dialog ();
setup_dialog (dialog);
gtk_main ();
return 0;
}