aboutsummaryrefslogtreecommitdiffhomepage
path: root/ide/wg_MessageView.ml
diff options
context:
space:
mode:
authorGravatar ppedrot <ppedrot@85f007b7-540e-0410-9357-904b9bb8a0f7>2012-06-24 01:50:27 +0000
committerGravatar ppedrot <ppedrot@85f007b7-540e-0410-9357-904b9bb8a0f7>2012-06-24 01:50:27 +0000
commit613bc22e120ff5c95eeed01836a5da4310e92998 (patch)
tree9142f72d2443d40b316033d0c9eb9e006113320c /ide/wg_MessageView.ml
parent6c75f49d04863fc89d927a6ea82509351915093c (diff)
Made the message view of CoqIDE abstract.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@15488 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'ide/wg_MessageView.ml')
-rw-r--r--ide/wg_MessageView.ml36
1 files changed, 36 insertions, 0 deletions
diff --git a/ide/wg_MessageView.ml b/ide/wg_MessageView.ml
new file mode 100644
index 000000000..b48afef58
--- /dev/null
+++ b/ide/wg_MessageView.ml
@@ -0,0 +1,36 @@
+(************************************************************************)
+(* v * The Coq Proof Assistant / The Coq Development Team *)
+(* <O___,, * INRIA - CNRS - LIX - LRI - PPS - Copyright 1999-2010 *)
+(* \VV/ **************************************************************)
+(* // * This file is distributed under the terms of the *)
+(* * GNU Lesser General Public License Version 2.1 *)
+(************************************************************************)
+
+class type message_view =
+ object
+ inherit GObj.widget
+ method add_selection_clipboard : GData.clipboard -> unit
+ method clear : unit -> unit
+ method push : Interface.message_level -> string -> unit
+ end
+
+let message_view () : message_view =
+ let buffer = GText.buffer ~tag_table:Tags.Message.table () in
+ let view = GText.view ~buffer ~editable:false ~wrap_mode:`WORD () in
+ object
+ inherit GObj.widget view#as_widget
+
+ method clear () =
+ buffer#set_text ""
+
+ method push level msg =
+ let tags = match level with
+ | Interface.Error -> [Tags.Message.error]
+ | _ -> []
+ in
+ buffer#insert ~tags msg
+
+ method add_selection_clipboard cb =
+ buffer#add_selection_clipboard cb
+
+ end