1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
   |  
 
void setting_sourceview_settings(GtkSourceView *view) {
  /** Configure the GtkSourceView according to configuration. **/
 
  #ifdef DEBUG
    DEBUG_FUNC_MARK
  #endif
 
  gtk_source_view_set_auto_indent(view, settings.use_auto_indent) ;
  gtk_source_view_set_indent_on_tab(view, TRUE);
  gtk_source_view_set_indent_width(view, settings.indent_width) ;
 
  gtk_source_view_set_insert_spaces_instead_of_tabs(view, settings.use_spaces_as_tabs);
  /** FIXME: ??? gtk_source_view_set_smart_home_end(view, GTK_SOURCE_SMART_HOME_END_BEFORE) ;   ??? **/
 
 
  gtk_source_view_set_show_line_numbers(view, settings.display_line_numbers) ;
 
  gtk_source_view_set_tab_width(view, settings.tabs_width) ;
 
  if (settings.display_tabs_chars) {
    gtk_source_view_set_draw_spaces(view, GTK_SOURCE_DRAW_SPACES_TAB) ;
  }
 
 
 
 
  /** This part of the function can be replace,
  GtkCssProvider *provider = gtk_css_provider_new ();
 
  gchar *text_css = g_strconcat("GtkTextView {\n"
                                 "font : ",
                                 settings.editor_font,
                                 "}\n",
                                 NULL) ;
 
 
  gtk_css_provider_load_from_data(provider, text_css, -1, NULL) ;
 
  g_free(text_css) ;
 
 
  GdkDisplay *display = gdk_display_get_default() ;
 
  GdkScreen *screen = gdk_display_get_default_screen(display) ;
 
  gtk_style_context_add_provider_for_screen (screen, GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_USER) ;
 
 
 
  g_object_unref(provider) ;
  */
 
  /** By this GtkTextView configuration setting: **/
  gtk_text_view_set_monospace( GTK_TEXT_VIEW(view), TRUE ) ;
 
  return ;
 
} | 
Partager