void font_init(AppearanceData* data) { GObject* peditor; GtkWidget* widget; data->font_details = NULL; data->font_groups = NULL; mateconf_client_add_dir(data->client, "/desktop/mate/interface", MATECONF_CLIENT_PRELOAD_ONELEVEL, NULL); mateconf_client_add_dir(data->client, "/apps/caja/preferences", MATECONF_CLIENT_PRELOAD_ONELEVEL, NULL); mateconf_client_add_dir(data->client, MARCO_DIR, MATECONF_CLIENT_PRELOAD_ONELEVEL, NULL); #ifdef HAVE_XFT2 mateconf_client_add_dir(data->client, FONT_RENDER_DIR, MATECONF_CLIENT_PRELOAD_ONELEVEL, NULL); #endif /* HAVE_XFT2 */ widget = appearance_capplet_get_widget(data, "application_font"); peditor = mateconf_peditor_new_font(NULL, GTK_FONT_KEY, widget, "conv-from-widget-cb", application_font_to_mateconf, NULL); g_signal_connect_swapped(peditor, "value-changed", G_CALLBACK (application_font_changed), widget); application_font_changed(widget); peditor = mateconf_peditor_new_font(NULL, DOCUMENT_FONT_KEY, appearance_capplet_get_widget (data, "document_font"), NULL); peditor = mateconf_peditor_new_font(NULL, DESKTOP_FONT_KEY, appearance_capplet_get_widget (data, "desktop_font"), NULL); peditor = mateconf_peditor_new_font(NULL, WINDOW_TITLE_FONT_KEY, appearance_capplet_get_widget (data, "window_title_font"), NULL); peditor = mateconf_peditor_new_font(NULL, MONOSPACE_FONT_KEY, appearance_capplet_get_widget (data, "monospace_font"), NULL); mateconf_client_notify_add (data->client, WINDOW_TITLE_USES_SYSTEM_KEY, marco_changed, data, NULL, NULL); marco_titlebar_load_sensitivity(data); #ifdef HAVE_XFT2 setup_font_pair(appearance_capplet_get_widget(data, "monochrome_radio"), appearance_capplet_get_widget (data, "monochrome_sample"), ANTIALIAS_NONE, HINT_FULL); setup_font_pair(appearance_capplet_get_widget(data, "best_shapes_radio"), appearance_capplet_get_widget (data, "best_shapes_sample"), ANTIALIAS_GRAYSCALE, HINT_MEDIUM); setup_font_pair(appearance_capplet_get_widget(data, "best_contrast_radio"), appearance_capplet_get_widget (data, "best_contrast_sample"), ANTIALIAS_GRAYSCALE, HINT_FULL); setup_font_pair(appearance_capplet_get_widget(data, "subpixel_radio"), appearance_capplet_get_widget (data, "subpixel_sample"), ANTIALIAS_RGBA, HINT_FULL); font_render_load (data->client); mateconf_client_notify_add (data->client, FONT_RENDER_DIR, font_render_changed, data->client, NULL, NULL); g_signal_connect (appearance_capplet_get_widget (data, "details_button"), "clicked", G_CALLBACK (cb_show_details), data); #else /* !HAVE_XFT2 */ gtk_widget_hide (appearance_capplet_get_widget (data, "font_render_frame")); #endif /* HAVE_XFT2 */ }
void font_init(AppearanceData* data) { GtkWidget* widget; data->font_details = NULL; data->font_groups = NULL; widget = appearance_capplet_get_widget(data, "application_font"); g_settings_bind (data->interface_settings, GTK_FONT_KEY, G_OBJECT (widget), "font-name", G_SETTINGS_BIND_DEFAULT); widget = appearance_capplet_get_widget (data, "document_font"); g_settings_bind (data->interface_settings, DOCUMENT_FONT_KEY, G_OBJECT (widget), "font-name", G_SETTINGS_BIND_DEFAULT); widget = appearance_capplet_get_widget (data, "desktop_font"); if (data->caja_settings) g_settings_bind (data->caja_settings, DESKTOP_FONT_KEY, G_OBJECT (widget), "font-name", G_SETTINGS_BIND_DEFAULT); else gtk_widget_set_sensitive (widget, FALSE); widget = appearance_capplet_get_widget (data, "window_title_font"); g_settings_bind (data->marco_settings, WINDOW_TITLE_FONT_KEY, G_OBJECT (widget), "font-name", G_SETTINGS_BIND_DEFAULT); widget = appearance_capplet_get_widget (data, "monospace_font"); g_settings_bind (data->interface_settings, MONOSPACE_FONT_KEY, G_OBJECT (widget), "font-name", G_SETTINGS_BIND_DEFAULT); g_signal_connect (data->marco_settings, "changed::" WINDOW_TITLE_USES_SYSTEM_KEY, G_CALLBACK (marco_changed), data); marco_titlebar_load_sensitivity(data); #ifdef HAVE_XFT2 setup_font_pair(appearance_capplet_get_widget(data, "monochrome_radio"), appearance_capplet_get_widget (data, "monochrome_sample"), ANTIALIAS_NONE, HINT_FULL); setup_font_pair(appearance_capplet_get_widget(data, "best_shapes_radio"), appearance_capplet_get_widget (data, "best_shapes_sample"), ANTIALIAS_GRAYSCALE, HINT_MEDIUM); setup_font_pair(appearance_capplet_get_widget(data, "best_contrast_radio"), appearance_capplet_get_widget (data, "best_contrast_sample"), ANTIALIAS_GRAYSCALE, HINT_FULL); setup_font_pair(appearance_capplet_get_widget(data, "subpixel_radio"), appearance_capplet_get_widget (data, "subpixel_sample"), ANTIALIAS_RGBA, HINT_FULL); font_render_load (data->font_settings); g_signal_connect (data->font_settings, "changed", G_CALLBACK (font_render_changed), NULL); g_signal_connect (appearance_capplet_get_widget (data, "details_button"), "clicked", G_CALLBACK (cb_show_details), data); #else /* !HAVE_XFT2 */ gtk_widget_hide (appearance_capplet_get_widget (data, "font_render_frame")); #endif /* HAVE_XFT2 */ }