Widget CreateStackTraceTreeView()
        {
            var store = new ListStore(typeof(ExceptionStackFrame), typeof(string), typeof(bool));

            StackTraceTreeView = new TreeView(store);
            StackTraceTreeView.HeadersVisible = false;
            StackTraceTreeView.ShowExpanders  = false;
            StackTraceTreeView.RulesHint      = true;
            StackTraceTreeView.Show();

            var ccr = new ExceptionCaughtLineNumberRenderer();

            var crt = new CellRendererText();

            crt.Ellipsize = Pango.EllipsizeMode.None;
            crt.WrapMode  = Pango.WrapMode.Word;
            //crt.WidthChars = -1;

            StackTraceTreeView.AppendColumn("", ccr, (CellLayoutDataFunc)LineNumberLayout);
            StackTraceTreeView.AppendColumn("", crt, "markup", (int)ModelColumn.Markup);

            StackTraceTreeView.SizeAllocated += (o, args) => crt.WrapWidth = args.Allocation.Width;
            StackTraceTreeView.RowActivated  += StackFrameActivated;

            var scrolled = new ScrolledWindow()
            {
                HeightRequest = 180
            };

            scrolled.ShadowType = ShadowType.None;
            scrolled.Add(StackTraceTreeView);
            scrolled.Show();

            return(scrolled);
        }
Exemplo n.º 2
0
		Widget CreateStackTraceTreeView ()
		{
			var store = new ListStore (typeof (ExceptionStackFrame), typeof (string), typeof (bool));
			StackTraceTreeView = new TreeView (store);
			StackTraceTreeView.HeadersVisible = false;
			StackTraceTreeView.ShowExpanders = false;
			StackTraceTreeView.RulesHint = true;
			StackTraceTreeView.Show ();

			var ccr = new ExceptionCaughtLineNumberRenderer ();

			var crt = new CellRendererText ();
			crt.Ellipsize = Pango.EllipsizeMode.End;
			crt.WrapWidth = -1;

			StackTraceTreeView.AppendColumn ("", ccr, (CellLayoutDataFunc) LineNumberLayout);
			StackTraceTreeView.AppendColumn ("", crt, "markup", (int) ModelColumn.Markup);

			StackTraceTreeView.SizeAllocated += (o, args) => crt.WrapWidth = args.Allocation.Width;
			StackTraceTreeView.RowActivated += StackFrameActivated;

			var scrolled = new ScrolledWindow () { HeightRequest = 128 };
			scrolled.ShadowType = ShadowType.None;
			scrolled.Add (StackTraceTreeView);
			scrolled.Show ();

			return scrolled;
		}