Author: mkrueger
Date: 2008-02-18 18:35:16 -0500 (Mon, 18 Feb 2008)
New Revision: 96111

Modified:
   trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog
   
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
   trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Document.cs
   
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/LineSegment.cs
   trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Segment.cs
   
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/TextViewMargin.cs
Log:
* Mono.TextEditor/DefaultEditActions.cs,
  Mono.TextEditor/TextViewMargin.cs, Mono.TextEditor/Document.cs,
  Mono.TextEditor/Segment.cs, Mono.TextEditor/LineSegment.cs: Fixed
  some warnings.

Modified: trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog
===================================================================
--- trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog 2008-02-18 
23:24:48 UTC (rev 96110)
+++ trunk/monodevelop/main/src/addins/Mono.Texteditor/ChangeLog 2008-02-18 
23:35:16 UTC (rev 96111)
@@ -1,5 +1,11 @@
 2008-02-19  Mike Krüger <[EMAIL PROTECTED]> 
 
+       * Mono.TextEditor/DefaultEditActions.cs, 
Mono.TextEditor/TextViewMargin.cs,
+         Mono.TextEditor/Document.cs, Mono.TextEditor/Segment.cs,
+         Mono.TextEditor/LineSegment.cs: Fixed some warnings.
+
+2008-02-19  Mike Krüger <[EMAIL PROTECTED]> 
+
        * Mono.TextEditor/TextEditor.cs: Fixed possible nullref.
 
 2008-02-19  Mike Krüger <[EMAIL PROTECTED]> 

Modified: 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
===================================================================
--- 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
     2008-02-18 23:24:48 UTC (rev 96110)
+++ 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/DefaultEditActions.cs
     2008-02-18 23:35:16 UTC (rev 96111)
@@ -912,7 +912,7 @@
                
                public void CopyData (TextEditorData data)
                {
-                       if (data.IsSomethingSelected) {
+                       if (data.IsSomethingSelected && data.Document.Contains 
(data.SelectionRange)) {
                                text = data.Document.GetTextAt 
(data.SelectionRange);
                                rtf  = GenerateRtf (data);
                        } else {

Modified: 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Document.cs
===================================================================
--- 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Document.cs   
    2008-02-18 23:24:48 UTC (rev 96110)
+++ 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Document.cs   
    2008-02-18 23:35:16 UTC (rev 96111)
@@ -623,6 +623,16 @@
                }
                #endregion
                
+               public bool Contains (int offset)
+               {
+                       return new Segment (0, Length).Contains (offset);
+               }
+               
+               public bool Contains (ISegment segment)
+               {
+                       return new Segment (0, Length).Contains (segment);
+               }
+               
                public int VisualToLogicalLine (int visualLineNumber)
                {
                        int result = visualLineNumber;

Modified: 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/LineSegment.cs
===================================================================
--- 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/LineSegment.cs
    2008-02-18 23:24:48 UTC (rev 96110)
+++ 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/LineSegment.cs
    2008-02-18 23:35:16 UTC (rev 96111)
@@ -191,7 +191,7 @@
                }
                public bool Contains (ISegment segment)
                {
-                       return  Offset <= segment.Offset && segment.EndOffset 
<= EndOffset;
+                       return segment != null && Offset <= segment.Offset && 
segment.EndOffset <= EndOffset;
                }
                
                public override string ToString ()

Modified: 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Segment.cs
===================================================================
--- 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Segment.cs    
    2008-02-18 23:24:48 UTC (rev 96110)
+++ 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/Segment.cs    
    2008-02-18 23:35:16 UTC (rev 96111)
@@ -74,7 +74,7 @@
                }
                public bool Contains (ISegment segment)
                {
-                       return  Offset <= segment.Offset && segment.EndOffset 
<= EndOffset;
+                       return  segment != null && Offset <= segment.Offset && 
segment.EndOffset <= EndOffset;
                }
                
                public override string ToString ()

Modified: 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/TextViewMargin.cs
===================================================================
--- 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/TextViewMargin.cs
 2008-02-18 23:24:48 UTC (rev 96110)
+++ 
trunk/monodevelop/main/src/addins/Mono.Texteditor/Mono.TextEditor/TextViewMargin.cs
 2008-02-18 23:35:16 UTC (rev 96111)
@@ -471,8 +471,6 @@
                public bool inSelectionDrag = false;
                public bool inDrag = false;
                public DocumentLocation clickLocation;
-               DocumentLocation selectionStartLocation;
-               ISegment minimalSelection = null;
                enum MouseSelectionMode {
                        SingleChar,
                        Word,
@@ -498,22 +496,18 @@
                                if (type == EventType.TwoButtonPress) {
                                        int start = ScanWord (offset, false);
                                        int end   = ScanWord (offset, true);
-                                       textEditor.SelectionRange = 
minimalSelection = new Segment (start, end - start);
-                                       selectionStartLocation = 
Document.OffsetToLocation (start);
+                                       textEditor.SelectionRange = new Segment 
(start, end - start);
                                        inSelectionDrag = true;
                                        mouseSelectionMode = 
MouseSelectionMode.Word;
                                        return;
                                } else if (type == EventType.ThreeButtonPress) {
-                                       textEditor.SelectionRange = 
minimalSelection = Document.GetLineByOffset (offset);
-                                       selectionStartLocation = 
Document.OffsetToLocation (minimalSelection.Offset);
+                                       textEditor.SelectionRange = 
Document.GetLineByOffset (offset);
                                        inSelectionDrag = true;
                                        mouseSelectionMode = 
MouseSelectionMode.WholeLine;
                                        return;
                                }
                                mouseSelectionMode = 
MouseSelectionMode.SingleChar;
-                               selectionStartLocation = clickLocation;
                                
-                               minimalSelection = null;
                                if (textEditor.IsSomethingSelected && 
textEditor.SelectionRange.Offset <= offset && offset < 
textEditor.SelectionRange.EndOffset && clickLocation != 
textEditor.Caret.Location) {
                                        inDrag = true;
                                } else {

_______________________________________________
Mono-patches maillist  -  Mono-patches@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to