Esempio n. 1
0
		public DiffWidget (VersionControlDocumentInfo info, bool viewOnly = false)
		{
			this.info = info;
			this.Build ();
			comparisonWidget = new ComparisonWidget (viewOnly);
			buttonNext = new DocumentToolButton (Gtk.Stock.GoUp, GettextCatalog.GetString ("Previous Change"));
			buttonPrev = new DocumentToolButton (Gtk.Stock.GoDown, GettextCatalog.GetString ("Next Change"));
			labelOverview = new Gtk.Label () { Xalign = 0 };
			buttonDiff = new Gtk.Button (GettextCatalog.GetString ("Unified Diff"));
			
			this.buttonNext.Clicked += (sender, args) => ComparisonWidget.GotoNext ();
			this.buttonPrev.Clicked += (sender, args) => ComparisonWidget.GotoPrev ();
			notebook1.Page = 0;
			vboxComparisonView.PackStart (comparisonWidget, true, true, 0);
			comparisonWidget.Show ();
			
			comparisonWidget.DiffChanged += delegate {
				labelOverview.Markup = LabelText;
				SetButtonSensitivity ();
			};
			comparisonWidget.SetVersionControlInfo (info);
			this.buttonDiff.Clicked += HandleButtonDiffhandleClicked;
			diffTextEditor = new global::Mono.TextEditor.MonoTextEditor (new Mono.TextEditor.TextDocument (), CommonTextEditorOptions.Instance);
			diffTextEditor.Document.MimeType = "text/x-diff";
			
			diffTextEditor.Options.ShowFoldMargin = false;
			diffTextEditor.Options.ShowIconMargin = false;
			diffTextEditor.Options.DrawIndentationMarkers = PropertyService.Get ("DrawIndentationMarkers", false);
			diffTextEditor.Document.ReadOnly = true;
			scrolledwindow1.Child = diffTextEditor;
			diffTextEditor.Show ();
			SetButtonSensitivity ();
		}
Esempio n. 2
0
        protected override void OnSelected()
        {
            info.Start();
            ComparisonWidget.UpdateLocalText();
            var buffer = info.Document.GetContent <MonoDevelop.Ide.Editor.TextEditor> ();

            if (buffer != null)
            {
                var loc    = buffer.CaretLocation;
                int line   = loc.Line < 1 ? 1 : loc.Line;
                int column = loc.Column < 1 ? 1 : loc.Column;
                ComparisonWidget.OriginalEditor.SetCaretTo(line, column);
            }

            if (ComparisonWidget.Allocation.Height == 1 && ComparisonWidget.Allocation.Width == 1)
            {
                ComparisonWidget.SizeAllocated += HandleComparisonWidgetSizeAllocated;
            }
            else
            {
                HandleComparisonWidgetSizeAllocated(null, new Gtk.SizeAllocatedArgs());
            }

            widget.UpdatePatchView();
        }
Esempio n. 3
0
        public DiffWidget(VersionControlDocumentInfo info, bool viewOnly)
        {
            this.info = info;
            this.Build();
            comparisonWidget = new MonoDevelop.VersionControl.Views.ComparisonWidget(viewOnly);

            fixed1.SetSizeRequest(16, 16);
            this.buttonNext.Clicked += (sender, args) => ComparisonWidget.GotoNext();
            this.buttonPrev.Clicked += (sender, args) => ComparisonWidget.GotoPrev();
            notebook1.Page           = 0;
            vboxComparisonView.PackStart(comparisonWidget, true, true, 0);
            comparisonWidget.Show();

            comparisonWidget.DiffChanged += delegate {
                labelOverview.Markup = LabelText;
                SetButtonSensitivity();
            };
            comparisonWidget.SetVersionControlInfo(info);
            this.buttonDiff.Clicked         += HandleButtonDiffhandleClicked;
            diffTextEditor                   = new global::Mono.TextEditor.TextEditor(new Mono.TextEditor.Document(), new CommonTextEditorOptions());
            diffTextEditor.Document.MimeType = "text/x-diff";

            diffTextEditor.Options.ShowFoldMargin = false;
            diffTextEditor.Options.ShowIconMargin = false;
            diffTextEditor.Document.ReadOnly      = true;
            scrolledwindow1.Child = diffTextEditor;
            diffTextEditor.Show();
            SetButtonSensitivity();
        }
Esempio n. 4
0
        protected override void OnFocused()
        {
            info.Start();
            if (ComparisonWidget.originalComboBox.Text == GettextCatalog.GetString("Local"))
            {
                ComparisonWidget.UpdateLocalText();
            }
            var textView = info.Controller.GetContent <ITextView> ();

            if (textView != null)
            {
                var(line, column) = textView.Caret.Position.BufferPosition.GetLineAndColumn1Based();
                ComparisonWidget.OriginalEditor.SetCaretTo(line, column);
            }

            if (ComparisonWidget.Allocation.Height == 1 && ComparisonWidget.Allocation.Width == 1)
            {
                ComparisonWidget.SizeAllocated += HandleComparisonWidgetSizeAllocated;
            }
            else
            {
                HandleComparisonWidgetSizeAllocated(null, new Gtk.SizeAllocatedArgs());
            }

            widget.UpdatePatchView();
        }
Esempio n. 5
0
 public void Selected()
 {
     info.Start();
     ComparisonWidget.UpdateLocalText();
     ComparisonWidget.OriginalEditor.Document.IgnoreFoldings = true;
     ComparisonWidget.OriginalEditor.Caret.Location          = info.Document.Editor.Caret.Location;
     ComparisonWidget.OriginalEditor.VAdjustment.Value       = info.Document.Editor.VAdjustment.Value;
     ComparisonWidget.OriginalEditor.GrabFocus();
 }
Esempio n. 6
0
        public DiffView(VersionControlDocumentInfo info, Revision baseRev, Revision toRev) : base(GettextCatalog.GetString("Changes"))
        {
            this.info = info;
            widget    = new DiffWidget(info);
            ComparisonWidget.SetRevision(ComparisonWidget.DiffEditor, baseRev);
            ComparisonWidget.SetRevision(ComparisonWidget.OriginalEditor, toRev);

            widget.ShowAll();
        }
Esempio n. 7
0
            public OverviewRenderer(ComparisonWidget widget)
            {
                this.widget = widget;
                widget.Vadjustment.ValueChanged += delegate {
                    QueueDraw();
                };
                WidthRequest = 50;

                Events |= EventMask.ButtonPressMask | EventMask.ButtonReleaseMask | EventMask.ButtonMotionMask;

                Show();
            }
Esempio n. 8
0
		async void CreateWiget ()
		{
			if (widget == null) {
				widget = new DiffWidget (info);
				try {
					ComparisonWidget.DiffEditor.Document.Text = await info.Item.Repository.GetBaseTextAsync (info.Item.Path);
				} catch (Exception ex) {
					LoggingService.LogInternalError ("Error fetching text from repository ", ex);
				}

				ComparisonWidget.SetLocal (ComparisonWidget.OriginalEditor.GetTextEditorData ());
				widget.ShowAll ();
			}
		}
Esempio n. 9
0
 public void Selected()
 {
     info.Start();
     ComparisonWidget.UpdateLocalText();
     ComparisonWidget.OriginalEditor.Document.IgnoreFoldings = true;
     ComparisonWidget.OriginalEditor.Caret.Location          = info.Document.Editor.Caret.Location;
     if (ComparisonWidget.Allocation.Height == 1 && ComparisonWidget.Allocation.Width == 1)
     {
         ComparisonWidget.SizeAllocated += HandleComparisonWidgetSizeAllocated;
     }
     else
     {
         HandleComparisonWidgetSizeAllocated(null, new Gtk.SizeAllocatedArgs());
     }
 }
Esempio n. 10
0
        public DiffWidget(VersionControlDocumentInfo info, bool viewOnly)
        {
            this.info = info;
            this.Build();
            comparisonWidget = new MonoDevelop.VersionControl.Views.ComparisonWidget(viewOnly);

            fixed1.SetSizeRequest(16, 16);
            this.buttonNext.Clicked += (sender, args) => ComparisonWidget.GotoNext();
            this.buttonPrev.Clicked += (sender, args) => ComparisonWidget.GotoPrev();
            notebook1.Page           = 0;
            vboxComparisonView.PackStart(comparisonWidget, true, true, 0);
            comparisonWidget.Show();

            comparisonWidget.DiffChanged += delegate {
                labelOverview.Markup = LabelText;
                SetButtonSensitivity();
            };
            comparisonWidget.SetVersionControlInfo(info);
            this.buttonDiff.Clicked         += HandleButtonDiffhandleClicked;
            diffTextEditor                   = new global::Mono.TextEditor.TextEditor();
            diffTextEditor.Document.MimeType = "text/x-diff";
            if (info.Document != null)
            {
                diffTextEditor.Options.FontName         = info.Document.Editor.Options.FontName;
                diffTextEditor.Options.ColorScheme      = info.Document.Editor.Options.ColorScheme;
                diffTextEditor.Options.ShowTabs         = info.Document.Editor.Options.ShowTabs;
                diffTextEditor.Options.ShowSpaces       = info.Document.Editor.Options.ShowSpaces;
                diffTextEditor.Options.ShowInvalidLines = info.Document.Editor.Options.ShowInvalidLines;
                diffTextEditor.Options.ShowInvalidLines = info.Document.Editor.Options.ShowInvalidLines;
            }
            else
            {
                var options = MonoDevelop.SourceEditor.DefaultSourceEditorOptions.Instance;
                diffTextEditor.Options.FontName         = options.FontName;
                diffTextEditor.Options.ColorScheme      = options.ColorScheme;
                diffTextEditor.Options.ShowTabs         = options.ShowTabs;
                diffTextEditor.Options.ShowSpaces       = options.ShowSpaces;
                diffTextEditor.Options.ShowInvalidLines = options.ShowInvalidLines;
                diffTextEditor.Options.ShowInvalidLines = options.ShowInvalidLines;
            }

            diffTextEditor.Options.ShowFoldMargin = false;
            diffTextEditor.Options.ShowIconMargin = false;
            diffTextEditor.Document.ReadOnly      = true;
            scrolledwindow1.Child = diffTextEditor;
            diffTextEditor.Show();
            SetButtonSensitivity();
        }
Esempio n. 11
0
        public DiffView(VersionControlDocumentInfo info, Revision baseRev, Revision toRev) : base(GettextCatalog.GetString("Changes"))
        {
            this.info = info;
            widget    = new DiffWidget(info);

            ComparisonWidget.OriginalEditor.Document.MimeType      = ComparisonWidget.DiffEditor.Document.MimeType = info.Document.Editor.Document.MimeType;
            ComparisonWidget.OriginalEditor.Options.FontName       = ComparisonWidget.DiffEditor.Options.FontName = info.Document.Editor.Options.FontName;
            ComparisonWidget.OriginalEditor.Options.ColorScheme    = ComparisonWidget.DiffEditor.Options.ColorScheme = info.Document.Editor.Options.ColorScheme;
            ComparisonWidget.OriginalEditor.Options.ShowFoldMargin = ComparisonWidget.DiffEditor.Options.ShowFoldMargin = false;
            ComparisonWidget.OriginalEditor.Options.ShowIconMargin = ComparisonWidget.DiffEditor.Options.ShowIconMargin = false;

            ComparisonWidget.SetRevision(ComparisonWidget.DiffEditor, baseRev);
            ComparisonWidget.SetRevision(ComparisonWidget.OriginalEditor, toRev);

            widget.ShowAll();
        }
Esempio n. 12
0
        public ComparisonView(VersionControlDocumentInfo info) : base("Comparison")
        {
            this.info = info;
            widget    = new ComparisonWidget(info);

            widget.OriginalEditor.Document.MimeType      = widget.DiffEditor.Document.MimeType = info.Document.TextEditorData.Document.MimeType;
            widget.OriginalEditor.Options.FontName       = widget.DiffEditor.Options.FontName = info.Document.TextEditorData.Options.FontName;
            widget.OriginalEditor.Options.ColorScheme    = widget.DiffEditor.Options.ColorScheme = info.Document.TextEditorData.Options.ColorScheme;
            widget.OriginalEditor.Options.ShowFoldMargin = widget.DiffEditor.Options.ShowFoldMargin = false;
            widget.OriginalEditor.Options.ShowIconMargin = widget.DiffEditor.Options.ShowIconMargin = false;

            widget.OriginalEditor.Document  = info.Document.TextEditorData.Document;
            widget.DiffEditor.Document.Text = System.IO.File.ReadAllText(info.Item.Repository.GetPathToBaseText(info.Item.Path));
            widget.ShowAll();

            widget.OriginalEditor.Document.TextReplaced += HandleWidgetLeftEditorDocumentTextReplaced;

            HandleWidgetLeftEditorDocumentTextReplaced(null, null);
        }
Esempio n. 13
0
        public void Selected()
        {
            info.Start();
            ComparisonWidget.UpdateLocalText();
            var buffer = info.Document.GetContent <ITextBuffer> ();

            if (buffer != null)
            {
                int line, col;
                buffer.GetLineColumnFromPosition(buffer.CursorPosition, out line, out col);
                ComparisonWidget.OriginalEditor.SetCaretTo(line, col);
            }

            if (ComparisonWidget.Allocation.Height == 1 && ComparisonWidget.Allocation.Width == 1)
            {
                ComparisonWidget.SizeAllocated += HandleComparisonWidgetSizeAllocated;
            }
            else
            {
                HandleComparisonWidgetSizeAllocated(null, new Gtk.SizeAllocatedArgs());
            }
        }
        public DiffWidget(VersionControlDocumentInfo info, bool viewOnly = false)
        {
            this.info = info;
            this.Build();
            comparisonWidget = new ComparisonWidget(viewOnly);
            buttonNext       = new DocumentToolButton(Gtk.Stock.GoUp, GettextCatalog.GetString("Previous Change"));
            buttonPrev       = new DocumentToolButton(Gtk.Stock.GoDown, GettextCatalog.GetString("Next Change"));
            labelOverview    = new Gtk.Label()
            {
                Xalign = 0
            };
            buttonDiff = new Gtk.Button(GettextCatalog.GetString("Unified Diff"));

            this.buttonNext.Clicked += (sender, args) => ComparisonWidget.GotoNext();
            this.buttonPrev.Clicked += (sender, args) => ComparisonWidget.GotoPrev();
            notebook1.Page           = 0;
            vboxComparisonView.PackStart(comparisonWidget, true, true, 0);
            comparisonWidget.Show();

            comparisonWidget.DiffChanged += delegate {
                labelOverview.Markup = LabelText;
                SetButtonSensitivity();
            };
            comparisonWidget.SetVersionControlInfo(info);
            this.buttonDiff.Clicked         += HandleButtonDiffhandleClicked;
            diffTextEditor                   = new global::Mono.TextEditor.MonoTextEditor(new Mono.TextEditor.TextDocument(), CommonTextEditorOptions.Instance);
            diffTextEditor.Document.MimeType = "text/x-diff";

            diffTextEditor.Options.ShowFoldMargin         = false;
            diffTextEditor.Options.ShowIconMargin         = false;
            diffTextEditor.Options.DrawIndentationMarkers = PropertyService.Get("DrawIndentationMarkers", false);
            diffTextEditor.Document.ReadOnly = true;
            scrolledwindow1.Child            = diffTextEditor;
            diffTextEditor.Show();
            SetButtonSensitivity();
        }
Esempio n. 15
0
 public void ShowNextHandler()
 {
     ComparisonWidget.GotoNext();
 }
Esempio n. 16
0
 public ComboBoxSelector(ComparisonWidget widget, DropDownBox box)
 {
     this.widget = widget;
     this.box    = box;
 }
Esempio n. 17
0
 public void ShowPreviousHandler()
 {
     ComparisonWidget.GotoPrev();
 }
Esempio n. 18
0
			public ComboBoxSelector (ComparisonWidget widget, DropDownBox box)
			{
				this.widget = widget;
				this.box = box;
				
			}
Esempio n. 19
0
 public MiddleArea(ComparisonWidget widget)
 {
     this.widget  = widget;
     this.Events |= EventMask.PointerMotionMask | EventMask.ButtonPressMask;
 }
Esempio n. 20
0
			public MiddleArea (ComparisonWidget widget)
			{
				this.widget = widget;
				this.Events |= EventMask.PointerMotionMask | EventMask.ButtonPressMask;
			}
Esempio n. 21
0
			public OverviewRenderer (ComparisonWidget widget)
			{
				this.widget = widget;
				widget.Vadjustment.ValueChanged += delegate {
					QueueDraw ();
				};
				WidthRequest = 50;
				
				Events |= EventMask.ButtonPressMask | EventMask.ButtonReleaseMask | EventMask.ButtonMotionMask;
				
				Show ();
			}
Esempio n. 22
0
		public ComparisonView (VersionControlDocumentInfo info) : base ("Comparison")
		{
			this.info = info;
			widget = new ComparisonWidget (info);
			
			widget.OriginalEditor.Document.MimeType = widget.DiffEditor.Document.MimeType = info.Document.TextEditorData.Document.MimeType;
			widget.OriginalEditor.Options.FontName = widget.DiffEditor.Options.FontName = info.Document.TextEditorData.Options.FontName;
			widget.OriginalEditor.Options.ColorScheme = widget.DiffEditor.Options.ColorScheme = info.Document.TextEditorData.Options.ColorScheme;
			widget.OriginalEditor.Options.ShowFoldMargin = widget.DiffEditor.Options.ShowFoldMargin = false;
			widget.OriginalEditor.Options.ShowIconMargin = widget.DiffEditor.Options.ShowIconMargin = false;
			
			widget.OriginalEditor.Document = info.Document.TextEditorData.Document;
			widget.DiffEditor.Document.Text = System.IO.File.ReadAllText (info.Item.Repository.GetPathToBaseText (info.Item.Path));
			widget.ShowAll ();
			
			widget.OriginalEditor.Document.TextReplaced += HandleWidgetLeftEditorDocumentTextReplaced;
			
			HandleWidgetLeftEditorDocumentTextReplaced (null, null);
		}
Esempio n. 23
0
		public ComparisonView (VersionControlDocumentInfo info) : base ("Comparison")
		{
			this.info = info;
			widget = new ComparisonWidget (info);
			
			widget.OriginalEditor.Document.MimeType = widget.DiffEditor.Document.MimeType = info.Document.Editor.Document.MimeType;
			widget.OriginalEditor.Options.FontName = widget.DiffEditor.Options.FontName = info.Document.Editor.Options.FontName;
			widget.OriginalEditor.Options.ColorScheme = widget.DiffEditor.Options.ColorScheme = info.Document.Editor.Options.ColorScheme;
			widget.OriginalEditor.Options.ShowFoldMargin = widget.DiffEditor.Options.ShowFoldMargin = false;
			widget.OriginalEditor.Options.ShowIconMargin = widget.DiffEditor.Options.ShowIconMargin = false;
			widget.DiffEditor.Document.Text = info.Item.Repository.GetBaseText (info.Item.Path);
			widget.SetLocal (widget.OriginalEditor.GetTextEditorData ());
			widget.ShowAll ();
		}