SyntaxEditor v4.0 Release History for Beta 2 Through Final

SyntaxEditor for Windows Forms Forum

Posted 18 years ago by Actipro Software Support - Cleveland, OH, USA
For those customers who downloaded and worked with the 4.0 beta, this changelog contains all the changes made throughout the beta process up into the final release.

For the final release, the Readme's Release History contains a merged sum total of what is in the final 4.0 version since the last 3.1 version.

10/2/2006 - Version 4.0.0232 (Final)
  • Added a dynamic language XML definition for the Assembly language.
  • Added a dynamic language XML definition for the Lua language.
  • Added a dynamic language XML definition for the MSIL language.
  • Added the LoadForFile and LoadForCode methods to the SourceProjectContent class to load reflection data for a .NET code file into the source project content, when the code file is not being edited in a SyntaxEditor control.
  • Updated the .NET Reflection QuickStart to demo the code file loading features for the SourceProjectContent class.
  • Added the IntelliPromptMemberList.CaseSensitiveMatch property to control whether case sensitive matches in the member list are preferred.
  • Tweaked the member list item matching code.
  • Tweaked the dispose code throughout the product.
  • BREAK: Removed Modified property from IToken. In v3.1, tokens were all the same Token type so only parse data was replaced and the Modified property could be set. In v4.0, the language can create any token type so the Modified property cannot be implemented. Instead, all replaced tokens are now added to TokenCollection.DeletedTokens if Document.DeletedTokenTrackingEnabled is true.
  • BREAK: Removed the LexicalParseFlags.Modified item.
  • Fixed a bug in the .NET Languages Add-on's C# language with the indenting of open braces near the start of a document.
  • Updated the Shared/WinUICore libraries.
9/26/2006 - Version 4.0.0231 (Beta Release 5)
  • Automated the addition of error indicators to add-on languages via the new SyntaxLanguage.ErrorDisplayEnabled property.
  • Added automated tooltip display when hovering over syntax errors in the text if SyntaxLanguage.ErrorDisplayEnabled is set.
  • Automated the update of the DotNetProjectResolver.SourceProjectContent when changes are made to a C# document as long as the Document.Filename property is set and the new CSharpSyntaxLanguage.SourceProjectContentUpdateEnabled property is set, which it is by default.
  • Added the SyntaxLanguage.OnDocumentSemanticParseDataChanged method that is called whenever the Document.SemanticParseData property is changed for a document using the language.
  • Added the SyntaxEditor.UserInterfaceUpdate event that occurs after a delay (specified by the new SyntaxLanguage.UserInterfaceUpdateDelay property) following the DocumentTextChange and DocumentSemanticParseDataChanged events, allowing for updating of user interface controls external to SyntaxEditor.
  • Added the SyntaxLanguage.OnSyntaxEditorUserInterfaceUpdate method, which is similar to SyntaxEditor.UserInterfaceUpdate but implemented on the SyntaxLanguage class.
  • Removed all error indicator display and source project content update code from the sample project since it is now automated.
  • Removed the UIUpdateTimer from the MainForm sample since the SyntaxEditor.UserInterfaceUpdate is now used instead.
  • Consolidated all Timers used by SyntaxEditor into a single Timer. This uses less resources.
  • BREAK: Changed the Caret class so that it inherits Object instead of DisposableObject.
  • Added the OnDocumentFilenameChanging and OnDocumentFilenameChanged methods to the SyntaxLanguage class.
  • Updated the dynamic XML and HTML languages to perform end tag auto-complete, just like in Visual Studio.
  • Updated the dynamic HTML language's tag member list to work with the new auto-complete feature.
  • Added the DocumentLine.IndentAmount property, which returns the number of columns that the first non-whitespace character is indented on the line.
  • BREAK: Changed the Document.SmartIndent event so that the IndentAmount property specifies characters and not tabs, allowing for smart indent to any character column. To achieve old functionality, multiply the desired tabstop level by the SyntaxEditor.Document.TabSize value.
  • Added a DotNetProjectResolver.AddExternalReference overload that accepts a custom full name for an assembly.
  • Added an AssemblyCodeRepository.Add overload that accepts a custom full name for an assembly.
  • Tweaked how the AssemblyCodeRepository works when loading reflection data for already-loaded assemblies.
  • Added the IntelliPromptCodeSnippets.CheckForCodeSnippetShortcut method to wrap the code needed to check the word preceeding the caret for a code snippet shortcut. If a valid shortcut is found, the code snippet is activated.
  • Set the PageSetupDialog.EnableMetric property to true within the SyntaxEditor.ShowPageSetupForm code in the .NET 2.0 SyntaxEditor assembly.
  • Added code to set focus to SyntaxEditor if a scrollbar is clicked.
  • Added a new SpanIndicatorLayer.Add overload that specifies whether to throw an exception when the indicator being added overlaps with another indicator that is already in the layer.
  • Added the IAstNodeList.ParentNode property.
  • Changed Document.LoadFile so that the Filename property is set before the file's text is loaded, instead of after.
  • Tweaked how the mouse selection code works.
  • Added code to the .NET Languages Add-on to display quick info for decimal integers that include hexadecimal and decimal display.
  • Added code to the .NET Languages Add-on to support member lists on string literals.
  • Fixed a bug in the ParseIdentifier methods of the lexical parsers for the .NET Languages Add-on C# language and Simple language.
  • BREAK: Changed the .NET Languages Add-on so that the CompilationUnit and NamespaceDeclaration classes do not get UsingDirectives or ExternAliasDirectives set unless there actually is one.
  • Fixed a bug in the .NET Languages Add-on C# language where empty methods didn't display IntelliPrompt correctly when queried between method braces.
  • Fixed a bug in the .NET Languages Add-on C# language where typing a dot after a void method call would list basic Object members.
  • Fixed a bug in the .NET Languages Add-on C# language where defining a class with a base class of itself would cause an infinite loop.
  • Fixed a bug in the .NET Languages Add-on C# language where indenting of { characters was off in a scenario near the start of the document.
  • Fixed a bug where printing runs of text in a fixed width font didn't line up vertically properly.
  • Fixed a bug where collapsing an XML comment node in the VB.NET language expanded a collapsed declaration below it.
  • Fixed a bug in IntelliPrompt.EscapeMarkupText that inappropriately escaped the = character.
  • Fixed a bug where deleting text would sometimes cause outlining to parse incorrectly.
  • Fixed a bug where search in selection reset the selection range after the first result was found.
  • Fixed a bug where in a certain scenario the minimum lexical parse range of dynamic languages wasn't calculated properly.
  • Fixed a bug in MoveDownCommand where selecting up from the document end with virtual space disabled and then pressing down wouldn't move the caret.
  • BREAK: Fixed a bug where the MergableToken.LexicalState property didn't always return the proper lexical state in a certain situation. This applies to dynamic languages as well.
  • Fixed a bug where accessing a protected member by using the base keyword didn't always populate the member list correctly.
  • BREAK: Renamed the DomBindingFlags.ContextIsTarget item to ContextIsTargetFamily.
  • Changes how the multi-threaded synchronization code works.
  • Added new help topics explaining error wave lines and dynamic language free samples.
  • Improved other help topics.
9/8/2006 - Version 4.0.0230 (Beta Release 4)
  • Added the ability for the parser generator to output VB.NET code. The Grammar tag now has an OutputLanguage attribute that indicates whether the parser generator should output C# or VB.NET code.
  • Updated the VB.NET sample project to have a complete source code implementation of the Simple language.
  • Updated the advanced XML language in the Web Languages Add-on to perform tag auto-complete when you type a > character.
  • Added comments to the grammar production code syntax that output comments directly into the generated code.
  • Updated the Document Outline to show the Simple language by default.
  • Added a new FontDropDownList control that displays all non-Symbol fonts and shows fixed-width fonts in bold type.
  • Updated the StyleEditorForm to use the new FontDropDownList control.
  • Updated the MultipleFonts QuickStart to use the new FontDropDownList control.
  • Added the BorderTopColor and BorderBottomColor properties to the DocumentLine class to allow for separate border colors, or a border on only one side of a line.
  • Updated the LineHighlights QuickStart to demo the new separated document line border colors.
  • Added a TypeMemberDropDownList.SyntaxEditor property that when set, attaches to the SyntaxEditor and processes all event handling automatically. Updated samples to remove code that is now automated.
  • Updated the DotNetReflection QuickStart to demo the TypeMemberDropDownList control.
  • Added the SyntaxEditor.DocumentAutomaticOutliningComplete and Document.AutomaticOutliningComplete events, and the SyntaxLanguage.OnDocumentAutomaticOutliningComplete method, all of which can be used for collapsing regions on initial load if the event argument's IsProgrammaticTextReplacement property is set.
  • Added the CurrentStatementSpanIndicator class.
  • Added the CurrentStatementDisplayPriority and CurrentStatementKey constants to the SpanIndicatorLayer class.
  • Added the DocumentModificationEventArgs.IsProgrammaticTextReplacement property.
  • Added the ISemanticParserServiceProcessor.Key property.
  • Updated the dynamic VB.NET language definition to support XML documentation comments and member lists for the documentation comments.
  • Updated the dynamic VB.NET language definition's example text.
  • Moved several trigger handler samples that display member lists to the dynamic C# and HTML syntax language code.
  • Fixed a bug where IntelliPrompt wasn't properly pulling in base class members in a certain scenario.
  • Fixed a bug where the collapsing of dynamic C# language XML comments pulled in a newline at the end.
  • Updated the .NET Languages Add-on's C# language to support partial types.
  • Added the DomBindingFlags.OnlyIndexers item and updated the .NET Languages Add-on's C# language to support parameter info for indexers.
  • Added the DomBindingFlags.OnlyConstructors and DeclaringTypeOnly items and updated the .NET Languages Add-on's C# language to support parameter info for constructors.
  • Fixed a bug in the .NET Languages Add-on's C# language that showed a member list when typing a . within a comment or after a number.
  • Fixed a bug in the .NET Languages Add-on's C# language where "see" XML tags in a certain format weren't being processed correctly in quick info tips.
  • Fixed a bug in the .NET Languages Add-on's caching mechanism that didn't handle writing cache information for some types with null namespaces.
  • Added the DomBindingFlags.ExcludeIndexers item and updated the .NET Languages Add-on's C# language to not show indexers in member lists.
  • Fixed a bug where line modification marks from a change made on a blank line didn't always display properly.
  • Fixed a bug in the parser generator where additional expression conditions didn't filter up through the match methods properly.
  • Added the SemanticParseFlags enumeration.
  • Added the SemanticParserServiceRequest.Flags property.
  • BREAK: Added a SemanticParseFlags parameter to the SemanticParserServiceRequest constructors.
  • BREAK: Added a SemanticParseFlags parameter to SyntaxLanguage.PerformSemanticParse.
  • BREAK: Removed the DocumentModificationFlags.ProgrammaticTextParse item.
  • BREAK: Fixed a bug where the SpanIndicator.DrawMarks method passed the bounds of the display line. Added a displayLineIndex parameter to the method.
  • Updated documenation in several places and added several new topics.
8/28/2006 - Version 4.0.0230 (Beta Release 3)
  • Updated licensing on the .NET Languages Add-on to allow usage if you own SyntaxEditor 4.0 but not the .NET Languages Add-on.
  • Made classes generated by the parser generator into partial classes.
8/27/2006 - Version 4.0.0230 (Beta Release 2)
  • Added a VB.NET sample project.
[Modified at 10/19/2006 11:18 AM]

Actipro Software Support

The latest build of this product (v24.1.0) was released 4 months ago, which was after this thread was created.

Add Comment

Please log in to a validated account to post comments.