ParserBuilder - COCO/R IDE For Delphi 

(c)2002 Pat Connors  

Change Log

pbCocoFileSystem - Didn't test sufficiently and it was not logging any changes to History at all for new files. Fixed.

Parser Library Tree: Bug in which you could have trouble selecting the very top visible node of the treeview.
Misunderstood the role of the TopItem property - didn't realise it referred to the 
top item in view rather than of the tree. Replaced all references with tv.items[0] and checks to see if 
the item count is largert than zero.

Now you can drag Language Sample files and drop them on ParserBuilder - as a quick way of loading them.

There should be no further problems trying to use the WEAK symbol (Fixed in pbCocoFactor.pas).

Slightly better ATG code formatting. It produces a shorter, wider file than before - hopefully making it easier to 
view complicated sections.


Changed MaxStates to 1500 - to allow larger grammars
It was not compiling HTMLText.atg (many HTML Tags) - halted due to restriction.

Still haven't fixed the 20 and 8 byte memory leaks.
Seems to be some memory issue surrounding the action bars?

Fixed the slow file comparison routine - replaced it with a whitespace stripping parser which seems to work much faster (at least no noticeable delay on saving files) but I haven't measured it.

Fixed getSelectedCompiler so it never returns null. If it cannot determine which parser you are working with, it takes the first one that contains the Most Recently Used node name (stored in LSNodeCaption), if LSNodeCaption is blank, it returns the first compiler in the tree. There is at least one compiler guaranteed to be in the tree or we could not end up in this routine.

This is used in the file diff routine when showing ATG history.
It has been altered with the use of TRIM so that it is less sensitive to changes in whitespace or additional blank lines.

Now show an HourGlass cursor when formulating the history-diff view - as it can take a little while for large files.

When the user Abandons All Changes, it now resets the active compiler to be not in the edit state. It was passing in bad ATG before due to it being in Edit State. This function hasn't been well tested.

New Keyboard Shortcuts
- CTRL+( places "(. .)" at the cursor position in the ATG Editor.

(* These nest ones are handy routines for marking and then
copying blocks of text from the source file into the output stream *)

- CTRL+SHIFT+( places "(. SetStart; .)" at the cursor position in the ATG Editor.
- CTRL+ALT+( places "(. WriteStr(CopySourceToCurrent); .)" at the cursor position in the ATG Editor.

Parser Library Tree Bug
There was a bug when using the Back shortcut (ctrl+Backspace). If the node you were returnin to was at the top or bottom of the visible items in the Parser LIbrary Tree, you did not get the ATG Editor refreshing correctly. Should be fixed now.

WSStripper -
Added WSStripper Component: This is a white space stripping parser for atg file comparison - mentioned above:



Released first alpha version

Last Updated 20-May-2002