new class function ota.CurrentEditorIsSourceEditor, used in TEditorExpert.ActionOnUpdate and .DoExecute
Started converting GxOtaXxxx functions to class functions of a new Ota class. Also added a TryGetXxx function for every GetXxx function.
new (internal) functions TryGetEditorExpertsManager and GetEditorExpertsCount, used in TMenusForEditorExperts.CreateSubMenuItems, .PopulatePopupMenu and .UpdateAction
new function TryGetGExpertsInst
new functions TryGetViewDesktopEntries and GetViewDesktopEntries
updated copyright year
Updating the statusbar slows done search time
I don't see much of an improvement on my machine, but it might make a much larger difference in a VM and it shouldn't hurt. Patch applied in revision #4894
Applied patch submitted by Benedikt Schindler in bug #462: Updating the statusbar slows done search time (with modifications)
Updating the statusbar slows done search time
also ask the user, if the Delphi version for a .groupproj file cannot be determined
new function TWindowsShell.GetPrograms and class function .GetProgramsDir
added new parameter DefaultIfEmtpy with default value = False to the overloaded versions of TIniFile_ReadInt
switched to Delphi 10.2
Wrongly assumes that dcp and bpl directories are located under public\documents
Wrongly assumes that dcp and bpl directories are located under public\documents
Code formatter handles only 3 quotes for multiline strings
Fixed in revision #4893
Fix and unit tests for bug #445: Code formatter handles only 3 quotes for multiline strings
The problem with the Grep Results window is that its position is stored in the IDE's desktop. It does not store its position (except in the stand alone version). So in order to always have it where you want it to be, you must do the following: Move the Window Optionally: close the window Save the current desktop Repeat 1..3 for all your desktops I just tested this and it worked for me. It's the same as with all other dockable windows, including the ones in the IDE. (I have thought about making that...
InstantGrep versus Dark Theme
I still cannot reproduce this. There is a bug when switching between dark and light theme while this dialog is open, but that has a different effect. I'm closing this ticket now. Please compile a new dll from the current sources and test again. If the bug is still there, I'll need additional information on how to reproduce it.
Can't disable InstantGrep
fixed in revision #4892
fix for bug #451: Can't disable InstantGrep
Member variables Name and Index are formatted incorrectly
fixed in revision #4891
Member variables Name and Index are formatted incorrectly
Note to self: This would have been detected fine, if it had been "Index" instead of "Name" and if it had been the last identifier before the colon, but unfortunately there is a second field declared with the same type. This works fine: type TTest = class Field: Integer; Index: string; Value: string; end; It's odd that I've never noticed that before. Having a field called "Name" isn't that uncommon.
added rudimentary help for the code formatter
added rudimentary help for the code formatter
added rudimentary help for the code formatter
added original delfor.hlp
* set ActiveControl to filter edit
increased height of checkboxes and radiogroups so they don't get cut off when theming is enabled (in Delphi 12 and 13)
Formatter capitalization list seems to lose entries
Fixed in revision #4884
Formatter capitalization list is not written to the file on exit
Formatter capitalization list is not written to the file on exit
It is now written in the destructor. Revision #4884
* moved code from TeCodeFormatterExpert.AddToCapitalization to TCodeFormatterExpert.SaveCapitalization and called this new method in TCodeFormatterExpert.Destroy.
Formatter capitaliation list is not written to the file on exit
Bugfix: The SaveDialog caption wrongly stated that the file was for import rather than export
added a todo
assigned -> Assigned
* only delete identifier if has been changed
www.dummzeuch.de -> blog.dummzeuch.de
add option to insert emtpy line before uses
add option to insert LF before uses
optionally delete the Delphi 12 or Delohi 13 link which the IDE puts in the start menu.
* moved externals from osdn to sourceforge
Cannot handle duplicate entries
moved code from TPascalToken.ChangeSingleLineCommentToBeginEndComment to a nested procedure in TCodeFormatterFormatter.CheckSlashComment
* renamed TPascalToken.GetExpression to .TryGetExpression
I have applied the Uses list patch now and also refactored the code to reduce the length the CheckIndent method (which is still way too long) and removed several variables from that method that were only used within one case block. Please have a look what you need to change for the enum indentation to work with the new code and submit your patch again.
* renamed all HandleXxx methods that were extracted from CheckIndent to CheckIndentXxx
* new overloaded version of TryGetNextNoComment with out an Offset parameter
removed variable RemoveMe in .HandleColon by calling the overloaded version of TryGetNextNoComment that does not need the Offset parameter
* Refactoring: moved code of rtLeftBr case block to new method HandleLeftBr
variable FuncDirectiveRemoveMe is not necessary, we can just call the overloaded TryGetNextNoComment whithout the Offset parameter
Refactoring: moved code of rtProcedure case block to new method HandleProcedure
* no functional changes
* removed the unused parameter RemoveMe from HandleComma
Refactoring: moved code of rtComma case block to new method HandleComma
Fixed compile error
* removed unit tests for UnitExportList (which is no longer used anyway)
* removed duplicate dunit directory (now uses the one in UnitTestsFormatter)
line breaks before the comma for uses lists can comment out the unit names
patch applied in revision #4864
* Fix for bug #442 line breaks before the comma for uses lists can comment out the unit names
Formatter does not store cursor position of additional edit windows
corrected indentation and improved wording of a todo
removed check for '(' on top the stack when handling program, unit or initialization
replaced the remaining two occurrences of GetNextNoComment with TryGetNextNoComment and removed that overloaded method completely
Add an option to indent multi line if conditions
formatted, no other changes
units automatically added by the IDE
renamed ExceptSingle record field to FeedAfterThenExceptSingle
todo: give "ExceptSingle" record field better name
Formatter inserts line feed between a unit in uses and {$endif}
fixed in revision #4856
* Fix for AccessViolation when GetNextNoComment returns NIL while removing the break after the comma (which didn't occur in the tests before for some reason)
Renenable closing the Exception dialog with Esc
There should be no files in output
Formatter inserts line feed between a unit in uses and {$endif}
Hm, I don't remember doing anything to make Grep behave in this way. All dockable windows descend from a common ancestor and docking should be handled by the IDE. But I can reproduce this behavior, together with some other strange docking glitches. And please only submit one bug per report, the IDE theme issue should be a separate report.
Rename component, Delphi
Unfortunately that's a shortcoming of the Open Tools API. This actually used to work in ancient Delphi version but is broken since at least Delphi XE. And that means there is nothing I can do about it.
new IDE option to turn off the transparcency of the progress dialog
You need to surround the code with 3x tilde ~ : code here for it to be formatted correctly. Use the </> button to insert them. (This is for the sourceforge feature request, not the code fomatter.)
You need to surround the code with code here for it to be formatted correctly (This is for the sourceforge feature request, not the code fomatter.)
Code formatting of {$IFDEF ...
Formatter does not store cursor position of additional edit windows
Fixed in revision #4852
Fix for bug #450: Formatter does not store cursor position of additional edit windows
* todo regarding a space between ';' and '{$ENDIF}'
* set labels to ReservedType rtLabel after they have been detected in TCodeFormatterFormatter.HandleColon, so they can be found easier in TCodeFormatterFormatter.FormatAsm to prevent their indentation from being increased again.