Browse Source

Set correct caret column when pressing return.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@2643 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 19 years ago
parent
commit
2213306f2d
  1. 9
      src/AddIns/BackendBindings/VBNetBinding/Project/Src/FormattingStrategy/VBNetFormattingStrategy.cs
  2. 4
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/FormattingStrategy/DefaultFormattingStrategy.cs
  3. 2
      src/Main/Base/Project/Src/TextEditor/XmlFormattingStrategy.cs
  4. 4
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs

9
src/AddIns/BackendBindings/VBNetBinding/Project/Src/FormattingStrategy/VBNetFormattingStrategy.cs

@ -360,7 +360,7 @@ namespace VBNetBinding.FormattingStrategy @@ -360,7 +360,7 @@ namespace VBNetBinding.FormattingStrategy
}
textArea.Document.Replace(curLine.Offset, curLine.Length, indentation + curLineText.Trim());
//return indentation.Length;
textArea.Caret.Column = indentation.Length;
return;
}
}
@ -376,15 +376,14 @@ namespace VBNetBinding.FormattingStrategy @@ -376,15 +376,14 @@ namespace VBNetBinding.FormattingStrategy
if (IsElseConstruct(lineAboveText))
SmartIndentLine(textArea, lineNr - 1);
int result = SmartIndentLine(textArea, lineNr) + 1;
textArea.Caret.Column = SmartIndentLine(textArea, lineNr) + 1;
} else {
textArea.Document.Insert(lineAbove.Offset + lineAbove.Length,
"\"");
if (IsElseConstruct(lineAboveText))
SmartIndentLine(textArea, lineNr - 1);
int result = SmartIndentLine(textArea, lineNr);
textArea.Caret.Column = SmartIndentLine(textArea, lineNr);
}
//return result;
}
else
{
@ -396,7 +395,7 @@ namespace VBNetBinding.FormattingStrategy @@ -396,7 +395,7 @@ namespace VBNetBinding.FormattingStrategy
}
if (IsElseConstruct(lineAboveText))
SmartIndentLine(textArea, lineNr - 1);
//return indent.Length;
textArea.Caret.Column = indent.Length;
}
}
else if(ch == '>')

4
src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/FormattingStrategy/DefaultFormattingStrategy.cs

@ -103,9 +103,11 @@ namespace ICSharpCode.TextEditor.Document @@ -103,9 +103,11 @@ namespace ICSharpCode.TextEditor.Document
case IndentStyle.Smart:
result = SmartIndentLine(textArea, line);
break;
default:
throw new NotSupportedException("Unsupported value for IndentStyle: " + textArea.Document.TextEditorProperties.IndentStyle);
}
textArea.Document.UndoStack.EndUndoGroup();
return 0;
return result;
}
/// <summary>

2
src/Main/Base/Project/Src/TextEditor/XmlFormattingStrategy.cs

@ -69,7 +69,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor @@ -69,7 +69,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor
Debug.Assert(false, e.ToString());
}
if (charTyped == '\n') {
IndentLine(textArea, lineNr);
textArea.Caret.Column = IndentLine(textArea, lineNr);
}
textArea.Document.UndoStack.EndUndoGroup();
}

4
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs

@ -105,7 +105,9 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -105,7 +105,9 @@ namespace ICSharpCode.SharpDevelop.Dom
Dictionary<string, IClass> oldList = classLists[0];
d = new Dictionary<string, IClass>(oldList.Count, language.NameComparer);
foreach (KeyValuePair<string, IClass> pair in oldList) {
d.Add(pair.Key, pair.Value);
// don't use d.Add(), the new name language might treat two names as equal
// that were unequal in the old dictionary
d[pair.Key] = pair.Value;
}
} else {
d = new Dictionary<string, IClass>(language.NameComparer);

Loading…
Cancel
Save