1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374(**************************************************************************)(* *)(* This file is part of Frama-C. *)(* *)(* Copyright (C) 2007-2023 *)(* CEA (Commissariat à l'énergie atomique et aux énergies *)(* alternatives) *)(* *)(* you can redistribute it and/or modify it under the terms of the GNU *)(* Lesser General Public License as published by the Free Software *)(* Foundation, version 2.1. *)(* *)(* It 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 Lesser General Public License for more details. *)(* *)(* See the GNU Lesser General Public License version 2.1 *)(* for more details (enclosed in the file licenses/LGPLv2.1). *)(* *)(**************************************************************************)(* Build a read only text view for C source code. *)letset_language_to_C(buffer:GSourceView.source_buffer)=letoriginal_source_language_manager=GSourceView.source_language_manager~default:trueinletoriginal_lang=original_source_language_manager#guess_language~content_type:"text/x-csrc"()inbeginmatchoriginal_langwith|Some_->buffer#set_languageoriginal_lang|None->Gui_parameters.warning"Mime type 'text/x-csrc' not found"end;buffer#set_highlight_syntaxtrueletmake?name~packing()=(* let d = GWindow.font_selection_dialog ~title:"tutu" ~show:true () in
d#selection#set_preview_text
(Format.sprintf "%s %s %s %s"
Utf8_logic.forall Utf8_logic.exists Utf8_logic.eq Utf8_logic.neq) ;
*)letoriginal_source_window=GSourceView.source_view~show_line_numbers:true~editable:false~packing()in(* let pixbuf =
original_source_window#misc#render_icon ~size:`MENU `DIALOG_WARNING
in
original_source_window#set_marker_pixbuf "warning" pixbuf; *)original_source_window#misc#modify_font_by_name"Monospace";original_source_window#misc#set_name(Option.value~default:"source"name);letoriginal_source_buffer=original_source_window#source_bufferinset_language_to_Coriginal_source_buffer;(*
ignore (original_source_buffer#create_marker ~typ:"warning" original_source_buffer#start_iter ) ;*)begintryoriginal_source_window#set_highlight_current_linetruewithNot_found->()(* very old gtksourceview do not have this property. *)end;original_source_windowletbuffer()=letoriginal_source_buffer=GSourceView.source_buffer()inset_language_to_Coriginal_source_buffer;original_source_buffer