SharpDevelop Community

Get your problems solved!
Welcome to SharpDevelop Community Sign in | Join | Help
in Search

SD3.0.0.2970: Bug in TextEditor DisplayBinding

Last post 02-20-2008 12:06 PM by siegi44. 0 replies.
Page 1 of 1 (1 items)
Sort Posts: Previous Next
  • 02-20-2008 12:06 PM

    • siegi44
    • Top 10 Contributor
    • Joined on 03-31-2006
    • Steyr, Austria
    • Posts 183
    • Team Members

    SD3.0.0.2970: Bug in TextEditor DisplayBinding

    I was playing around with the sources fresh from SVN and I tried to integrate the Hex Editor into SD, but I was facing problems with the TextEditor:

    When I try to load a file with the TextEditor I get this exception:

     System.ArgumentException: registeredViews already contains view

    at ICSharpCode.SharpDevelop.FileServiceOpenedFile.RegisterView(IViewContent view) in src\Main\Base\Project\Src\Services\File\OpenedFile.cs:Zeile 355.

    at ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor.TextEditorDisplayBinding.CreateContentForFile(OpenedFile file)
    in src\Main\Base\Project\Src\TextEditor\Gui\Editor\TextEditorDisplayDinding.cs:Zeile 47.

    at ICSharpCode.SharpDevelop.FileService.LoadFileWrapper.Invoke(String fileName)
    in src\Main\Base\Project\Src\Services\File\FileService.cs:Zeile 182.

    at ICSharpCode.Core.FileUtility.LoadWrapper.Invoke()
    in src\Main\Core\Project\Src\Services\FileUtility\FileUtility.cs:Zeile 598.

    at ICSharpCode.Core.FileUtility.ObservedLoad(FileOperationDelegate loadFile, String fileName, String message, FileErrorPolicy policy)
    in src\Main\Core\Project\Src\Services\FileUtility\FileUtility.cs:Zeile 545.

    I looked around in the code and I found out that file.ForceInitializeView(b2); already registers b2 as a View and so calling file.RegisterView(b2); is not necessary: (TextEditorDisplayBinding.cs, line 42)

            public virtual IViewContent CreateContentForFile(OpenedFile file)
            {
                TextEditorDisplayBindingWrapper b2 = new TextEditorDisplayBindingWrapper(file);
                file.ForceInitializeView(b2); // load file to initialize folding etc.
               
                file.RegisterView(b2);

    I hope this helps! 

    Siegfried Pammer
    Filed under:
Page 1 of 1 (1 items)
Powered by Community Server (Commercial Edition), by Telligent Systems
Don't contact us via this (fleischfalle@alphasierrapapa.com) email address.