Browse Source

Make editor read-only when opening a read-only file.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@5936 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Daniel Grunwald 15 years ago
parent
commit
b6cd22bd66
  1. 8
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs
  2. 2
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs

8
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs

@ -133,6 +133,10 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -133,6 +133,10 @@ namespace ICSharpCode.AvalonEdit.AddIn
codeEditor.PrimaryTextEditor.SyntaxHighlighting =
HighlightingManager.Instance.GetDefinitionByExtension(Path.GetExtension(file.FileName));
if (!file.IsUntitled) {
codeEditor.PrimaryTextEditor.IsReadOnly = (File.GetAttributes(file.FileName) & FileAttributes.ReadOnly) == FileAttributes.ReadOnly;
}
codeEditor.Load(stream);
// we set the file name after loading because this will place the fold markers etc.
codeEditor.FileName = FileName.Create(file.FileName);
@ -177,6 +181,10 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -177,6 +181,10 @@ namespace ICSharpCode.AvalonEdit.AddIn
StatusBarService.SetCaretPosition(this.Column, this.Line, this.Column);
}
public override bool IsReadOnly {
get { return codeEditor.PrimaryTextEditor.IsReadOnly; }
}
#region Bookmark Handling
void BookmarksAttach()
{

2
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs

@ -305,6 +305,8 @@ namespace ICSharpCode.AvalonEdit.AddIn @@ -305,6 +305,8 @@ namespace ICSharpCode.AvalonEdit.AddIn
secondaryTextEditor.SetBinding(TextEditor.DocumentProperty,
new Binding(TextEditor.DocumentProperty.Name) { Source = primaryTextEditor });
secondaryTextEditor.SetBinding(TextEditor.IsReadOnlyProperty,
new Binding(TextEditor.IsReadOnlyProperty.Name) { Source = primaryTextEditor });
secondaryTextEditor.SyntaxHighlighting = primaryTextEditor.SyntaxHighlighting;
gridSplitter = new GridSplitter {

Loading…
Cancel
Save