CodeSnip Changelog

What's new in CodeSnip 4.18.1

Nov 29, 2021
  • Improved handling of control and whitespace characters in generated HTML: revised which characters were converted to HTML character attributes / entities.
  • Fixed error in title of Save Annotated Source dialogue box.
  • Replaced use 3rd party GIFImage unit with similar GIFImg unit from Delphi XE VCL.
  • Corrected help topic for Dependencies dialogue box to describe Save & Close button.
  • Operating system detection code was updated to correctly detect Windows 11 and Windows 10 version 21H2.
  • Some refactoring.
  • Updated license document (License.html) following removal of dependency on GIFImage unit.

New in CodeSnip 4.18.0 (Sep 13, 2021)

  • Compilable Object Pascal units containing selected snippets from the database can be generated and written to file.
  • Individual snippets or whole categories can be written to Object Pascal include files or copied to the clipboard for including in Delphi and FreePascal projects.
  • Information about snippets can copied or printed.
  • Selected snippets can be exported to files that can be shared with other CodeSnip users.

New in CodeSnip 4.16.0 (May 31, 2020)

  • This is a significant update. It's purpose is to remove CodeSnip's dependencies on the delphidabbler.com website and associated web services. This was done because of the expected June 2020 closure or reduced functionality of delphidabbler.com. Some affected features were removed and others replaced with alternatives.
  • Removed all dependencies on web services. The following changes were made as a consequence of this:
  • Replaced the option to update the main DelphiDabbler Code Snippets database from the web with an option to update it from locally stored data:
  • Replaced the Update from Web dialogue box with a new wizard. Menu options on the Snippets menu were renamed accordingly and the old tool bar button was removed.
  • Changed the database update code to use data that has been manually downloaded from the delphidabbler/code-snippets GitHub project.
  • Modified the database reading code to accept both the new Code Snippets database v2 format and the legacy v1 format.
  • Replaced the option to import SWAG snippets from an on-line REST service with an option to import snippets from locally stored data.
  • Revised the SWAG import wizard re the changes to the import method.
  • Modified the SWAG import code to use data that has been manually downloaded from the delphidabbler/swag GitHub project.
  • The option to register the program was removed. No registration key is now generated or stored.
  • Replaced the option to read and display the CodeSnip RSS news feed with one to display the CodeSnip Blog.
  • Removed the menu option used to check for program updates.
  • Removed the background task that automatically checked for program and database updates.
  • Removed the option to submit snippets for addition to the DelphiDabbler Code Snippets database.
  • Removed support for a proxy web server - now unnecessary.
  • Removed support for the --test-server command line option that enabled use of a different server to test web services.
  • Updated install program so it no longer displays a page stating that CodeSnip will go automatically go on-line to check for updates.
  • Removed references and links to delphidabbler.com from the program, the installer, the help file and documentation. Some references were deleted while others were replaced with alternatives, including:
  • Changed the URL of the FAQs to refer to the codesnip-faq GitHub project.
  • References to swag.delphidabbler.com were replaced with references to the delphidabbler/swag project on GitHub.
  • URLs that were redirected via a service on delphidabbler.com were replaced by hard coded URLs.
  • The export file format was changed to exclude personal user information. The original format can still be read but any user information is ignored and discarded.
  • Config file processing changes:
  • Removed support for reading or writing data relating to removed features.
  • When CodeSnip is first run after updating from an earlier version, any pre-existing config files are purged of any information that is no longer relevant.
  • The common config file is no longer used by the portable edition. Any pre-existing file is deleted the first time the portable edition is run.
  • The common and per-user config file versions were bumped to 7 and 16 respectively.
  • Welcome page changes:
  • Removed the Update Checks and Donate sections and related links.
  • Removed links used to check for program and database updates.
  • Replaced the link used to display the news feed with one that displays the CodeSnip blog.
  • Added a "What's New" type of dialogue box that can be selectively displayed when a new version of CodeSnip is run for the first time. v4.16.0 always displays the dialogue box when first run.
  • The operating system detection code was updated to correctly detect all Windows and Windows Server releases as of March 2020.
  • Revised the About dialogue box:
  • To display version and licensing information extracted from Code Snippets Database v2 meta data.
  • To remove credits for 3rd party code that is no longer used.
  • The bug tracker dialogue boxes were updated re the change of issue tracker from SourceForge to GitHub.
  • Removed redundant pages and controls from the Preferences dialogue box.
  • Removed the Donate dialogue box and associated menu options.
  • Revised and re-ordered some menu options.
  • The program no longer generates and saves an application identifier key.
  • Bugs fixed:
  • Corrected license information stored in the Extra information section of imported SWAG packages.
  • Fixed a text formatting error in the SWAG import wizard (issue #4).
  • Fixed broken help topic links in some dialogue boxes (issue #3)
  • Fixed a bug in the portable edition's startup processing of its config file.
  • Fixed the dialogue box displayed when updating from CodeSnip v3 or earlier to display an icon in the Windows task bar.
  • Corrected the license details included in comments of generated source code that includes snippets from the main database.
  • Corrected typos and errors in the UI.
  • Some source code refactoring and clarifications.
  • Removed redundant library code:
  • Encryption library.
  • Indy Internet components.
  • Help file overhauled: new topics added, redundant topics removed and many errors corrected. Some restyling.
  • Updated documentation, including:
  • Major changes to ./README.md and ./Docs/ReadMe.txt.
  • Merged all the major version specific changelogs into a single ./CHANGELOG.md file and deleted the old files.
  • File format documentation was overhauled re changes introduced in this release.
  • Edited ./Docs/License.html to remove license information and acknowledgements for 3rd party code that is no longer used.
  • Fixed errors in ./Build.html concerning the source code repository and made some other minor changes.
  • Removed the privacy statement document, ./Docs/Privacy.txt since CodeSnip no longer stores or transmits any personal information. (Also removed privacy help topic and menu item.)
  • Removed ./Docs/Design/WebServices.txt file that described the web services used by CodeSnip.

New in CodeSnip 4.15.1 (Feb 15, 2018)

  • Updated OS detection code to detect Windows 10 Version 1607 (Anniversary update) and all technical previews of Windows 2016 Server to date.

New in CodeSnip 4.15.0 (Feb 15, 2018)

  • Added support for test compilation with, and detection of, Delphi 10.1 Berlin compiler.
  • Tweaked size of compiler list in Configure Compilers dialogue box to accommodate length of Delphi 10.1 Berline compiler name!
  • Updated documentation re changes.
  • Updated help file re changes.

New in CodeSnip 4.14.0 (Feb 15, 2018)

  • Changes to About Box's "Paths" tab:
  • Added new buttons to display the contents of the system and per-user config files.
  • Renamed tab as "Paths & Files".
  • Implemented feature request #83 (https://sourceforge.net/p/codesnip/feature-requests/83/) to enable the name and port of any web service test server to be passed on command line by using the new "--test-server" command line option. This replaces hard-wired test server name & port that was activated using the now removed "-localhost" command line switch.
  • Fixed bug #96: "Some open / save dialogues too small" (https://sourceforge.net/p/codesnip/bugs/96/). The height of customised dialogue boxes was increased.
  • Updated operating system detection code to detect Windows 10 TH2.
  • New photo of Sophie the dog added to the Easter egg slide show!
  • Updated help file re About Box changes.

New in CodeSnip 4.13.2 (Feb 15, 2018)

  • Release v4.13.2 of 20 February 2016
  • Updated and corrected hints displayed in main window.
  • Changed some menu options and associated dialogue box captions.
  • Tweaked some button captions in Select Snippets dialogue box.
  • Updated help file re the menu and caption changes.
  • Updated copyright date in program license as displayed in help, about box, installer and documentation.

New in CodeSnip 4.13.1 (Feb 15, 2018)

  • Improved operating system detection to detect Windows 10.
  • Modified program's manifest to declare it compatible with Windows 8 to 10.
  • Code that determines which system font to use no longer depends on OS version but simply on font availability.
  • Updated copyright date in program license as displayed in help, about box, installer and documentation.

New in CodeSnip 4.13.0 (Feb 15, 2018)

  • Added support for test compilation with, and detection of, Delphi 10 Seattle compiler.
  • Made some minor changes to method used to build required type library to remove dependency on the MS MIDL compiler, greatly simplifying build process.
  • Updated documentation re changes.
  • Updated help file re changes.

New in CodeSnip 4.12.0 (Feb 15, 2018)

  • Added support for test compilation with, and detection of, Delphi XE8 compiler.
  • Updated documentation re changes.
  • Updated help file re changes and fixed some spelling mistakes.

New in CodeSnip 4.11.0 (Sep 25, 2014)

  • Changes re licensing of snippets from online Code Snippets Database under MIT license:
  • Generated code now carries a reference to the MIT license where relevant.
  • Submit Snippets wizard has a new page where user must confirm that any submitted snippets may be MIT licensed.
  • "About the Database" of the About Box now refers to the license.
  • Documentation and help file updated accordingly.
  • Now uses version 6 of the Code Snippets Database update web service which supports the downloading of category and source code files larger than 32Kb.
  • The undocumented -localhost command line option now causes CodeSnip to expect web services to be on localhost port 8080 instead of port 80. This change has no effect on normal operation and is used only in testing.
  • Minor layout tweaks in in Display tab of Preferences dialogue box.
  • Minor changes to help file and documentation.

New in CodeSnip 4.10.0 (Sep 25, 2014)

  • Added support for test compilation with, and detection of, Delphi XE7 compiler.
  • Updated documentation re changes.
  • Updated help file re changes.

New in CodeSnip 4.9.0 (May 1, 2014)

  • Added support for test compilation with, and detection of, Delphi XE6 compiler.
  • Updated documentation re changes.
  • Updated help file re changes.

New in CodeSnip 4.8.7 (Mar 7, 2014)

  • Changed so that automatic bug checker now correctly records last update date. This fixes bug #93
  • Updated to use v2 of the DelphiDabbler CodeSnip update web service when checking for availability of program updates
  • Minor corrections to help file

New in CodeSnip 4.8.6 (Mar 3, 2014)

  • Improved operating system detection to handle Windows 8.1.
  • Added compatibility section to application manifest that declares the program has been tested with Windows Vista and Windows 7.

New in CodeSnip 4.8.4 (Nov 29, 2013)

  • Improved user interface of SWAG Import Wizard
  • Renamed "Save Snippet" and "Copy Snippet" menu options to "Save Annotated Source" and "Copy Annotated Source". This fixes bug #90: " Wrong caption on menu option for copying category to clipboard" (http://bit.ly/ImA398)
  • Revised and corrected numerous main menu and pop-up menu hints
  • Updated help file re changes to menu options and SWAG Import Wizards

New in CodeSnip 4.8.3 (Nov 8, 2013)

  • Fixed registry access code so that the 64 bit view of the registry is used when CodeSnip runs on a Windows 64 bit operating system.
  • Changed to avoid use of a deprecated API call when using the Windows Browse for Folder dialogue box.
  • Updated documentation.

New in CodeSnip 4.8.2 (Oct 30, 2013)

  • Modified Syntax Highlighter tab of Preferences dialogue box so that "vertical" fonts (whose names begin with "@") no longer appear in list of available fonts.
  • Fixed potential bug in operating system detection code that may fail on Windows 2000.

New in CodeSnip 4.8.1 (Sep 19, 2013)

  • Removed File | Page Setup menu option because some settings made there were being ignored when a file was printed. This is a fix for bug #89 "Setup selections not being remembered"
  • Updated help file re changes.

New in CodeSnip 4.8.0 (Sep 13, 2013)

  • Added support for Delphi XE5 compiler.
  • Fixed bug in code that reads or imports user database files written using CodeSnip 3 where Delphi XE4 compile results would be lost.
  • Updated documentation re changes.
  • Updated help file re changes.

New in CodeSnip 4.7.2 (Aug 27, 2013)

  • Fixed bug #88 "SWAG Import Wizard display bug" (http://bit.ly/15ryOxz) where duplicate snippets could be displayed on the "Ready to import" page in certain circumstances.

New in CodeSnip 4.7.1 (Aug 19, 2013)

  • Fixed bug where right clicking a tab in the detail pane sometimes caused the contents of the pane to be temporarily blanked out while the context menu was displayed.
  • This fix also, as a side effect, fixed bug #87 "Tab headings and contents don't match after a tab is closed.".

New in CodeSnip 4.7.0 (Aug 1, 2013)

  • Implemented feature request #71 "Support importing of one or more snippets from the SWAG database":
  • Uses DelphiDabbler SWAG web service to get SWAG data.
  • New wizard to permit user to select required SWAG snippets. This is accessible from the new "Snippets | Import Snippets From SWAG" menu option.
  • Snippets are imported into a new "SWAG Imports" category.
  • Implemented feature request #80 "Enable detail pane tabs to be re-ordered".
  • In detail pane source code and compiler table now display horizontal scroll bars if they do not fit within the width of the pane. This implements feature requests #60 and #61.
  • Minor changes to dialogue box that appears during long operations.
  • Fixed bug #86 "Snippets are sorted by snippet name in snippet table listings in detail pane"
  • Fixed a few code errors that could have surfaced as bugs.
  • Modified how HTML based detail pane display is generated and displayed.
  • Some refactoring.
  • Updated some 3rd party code to latest available versions.
  • Updated help file re changes.
  • Updated privacy statement.

New in CodeSnip 4.6.4 (Jul 26, 2013)

  • Fix for IE 9 related browser control script bugs introduced in v4.6.3 when IE 10 bugs were fixed:
  • Bug #84 Script errors on startup
  • Bug #85 Check For Updates link

New in CodeSnip 4.6.3 (Jul 15, 2013)

  • Further fix for IE 10 related bug #75 "Floating point error in 4.4.1". Re-implemented method used to display content in main window's detail pane using the IE web browser control.

New in CodeSnip 4.6.2 (Jul 10, 2013)

  • Tentative fix for bug #83 "Error when the main form is shown" (http://bit.ly/12eUV5Y) that has been reported on Windows 8. The fix is tentative because the bug hasn't been reproduced.

New in CodeSnip 4.6.1 (Jul 2, 2013)

  • Provided fix for un-reproduced bug #75 "Floating point error in 4.4.1" that apparently affects Windows 8, probably with IE 10 installed.
  • Fixed unreported bug where IE 10 browser was being reported as IE 9.
  • Fixed potential bug in code that processes class / advanced record snippet types ready for test compilation and inclusion in generated units.

New in CodeSnip 4.6.0 (Jun 21, 2013)

  • Added new options to "Find Cross References" dialogue box to allow snippets that either cross reference or depend upon the selected snippet to be included in the search. This implements feature request #30 (http://bit.ly/13cYImA).
  • Added a new "Select and Close" button to the Dependencies dialogue box that causes the snippets displayed on the current tab to be selected in the main display. This implements feature request #77 (http://bit.ly/15s8fH2).
  • The background colour of source code displayed in the main display can now be customised via a new option on the Display tab of the Preferences dialogue box. This implements feature request #36 (http://bit.ly/17fxMGW).
  • CodeSnip now compiled with Delphi XE.
  • Per-user configuration file format changed to v15 which is not entirely compatible with previous versions of CodeSnip.
  • Updated help file re changes.

New in CodeSnip 4.5.1 (May 16, 2013)

  • Added progress bars or marquees to several database operations that can take a long time on slower storage devices, i.e.:
  • When local files are being updated after downloading an updated database in the Update From Web dialogue box. This fixes bug #79
  • When the local database is being saved.
  • When the local database is being backed up or restored.
  • When the local database is being moved to a new location.
  • The user database can now be relocated to a network drive. This fixes issue #81 "Move database to a network drive"
  • Fixed issue #80 "HTML output bug"
  • Fixed minor alignment bug that occurred when displaying a wait dialogue box over the main window.
  • Some refactoring.
  • Updated help file re changes.

New in CodeSnip 4.5.0 (May 3, 2013)

  • Added support for Delphi XE4 compiler. Implements feature request #78
  • Updated documentation re changes.
  • Updated help file re changes.

New in CodeSnip 4.4.2 (Apr 26, 2013)

  • Fixed bugs:
  • An advanced record snippet with a method name that clashes with a directive is not test compiling correctly.
  • Syntax highlighter highlights "contains", "requires" and "package" directives when used in method names.
  • CodeSnip doesn't restore window in correct position when task bar on left or top of screen.

New in CodeSnip 4.4.1 (Apr 9, 2013)

  • Fixed bug #73 "Attempting to check for program updates returns a 404 'Not found' error" - this error happened only when using remote server, not localhost test server.

New in CodeSnip 4.4.0 (Apr 9, 2013)

  • Implemented feature request #75 "Check for updates on start-up":
  • CodeSnip checks for both program and Code Snippets Database updates in low priority background threads that run when the program is first started.
  • Update checking takes place at intervals between once per day and once per month.
  • A new "Updates" tab was added to the "Preferences" dialogue box where update frequencies can be chosen, or the auto-update feature switched off. Program and database update checking can be configured individually.
  • Updates are notified via a new slide-in, slide-out notification window that is displayed for a fixed amount of time or until closed by the user. The notification window contains a button that can be used to initiate the appropriate update. For database updates the "Update From Web" dialogue box is opened while for program updates a suitable download web page is displayed in the default browser.
  • Program checking is edition specific, i.e. the standard edition checks for standard edition updates and the portable edition behaves similarly.
  • A new "Update Checks" section was added the welcome screen that gives information about the current auto-update settings and provides a link to change them. Some other text on the screen was tweaked.
  • The "Check For Program Updates" dialogue box now opens the correct version and edition specific web page to download the latest version of CodeSnip instead of simply opening a general download page.
  • A new CodeSnip specific program update web service on the codesnip.delphidabbler.com sub-domain is now used to get information about CodeSnip updates instead of the generic update service on delphidabbler.com.
  • Additional usage information is now sent to the DelphiDabbler Code Snippets database update web service.
  • Some refactoring and code clean-up.
  • The installer may now display an information page that describes the new automatic update checking feature. This page is displayed only when updating from v4.3.0 or earlier to v4.4.0 (or later).
  • Updated help file:
  • Updated and added help topics for all new features of the release.
  • Updated "What's New" topic re new features.
  • Updated documentation, including privacy statement, with information about automatic update checking.
  • Per-user configuration file format changed to v13 which is incompatible with previous versions of CodeSnip.

New in CodeSnip 4.3.0 (Feb 27, 2013)

  • Implemented feature request #40 "Add 'Namespaces' tab to Configure Compilers dialogue box". The new tab appears only for Delphi XE2 and later and obviates the need to manually create -NS commands for passing to the compilers. Suitable default namespaces are provided if none have been configured.
  • Implemented feature request #70 "Let user specify location of user database". This feature is accessed from the new "Move Use Database" option on the Database menu. NOTE: The feature is not available in the portable edition which is designed to keep the user database toegther with the program.
  • Implemented feature request #69 "Enable custom syntax highlighter styles to be saved" . The Syntax Highlighter tab of the Preferences dialogue box has been modified to enable custom syntax highlighter attributes to be saved under a given name and existing named styles to be used or deleted.
  • Changed name of "Delphi 2006" predefined syntax highlighter to "RAD Studio". This remains the default highlighter.
  • A little refactoring.
  • Enlarged Configure Compilers dialogue box.
  • Updated help file:
  • Updated and added help topics re all new features in the release.
  • Updated "What's New" topic re new features.
  • Removed help topic for "Browse For Folders" dialogue box accessed from Search Paths tab of Configure Compilers dialogue.
  • Per-user configuration file format changed to v12 which is not fully compatible with previous versions of CodeSnip.
  • Updated documentation.

New in CodeSnip 4.2.1 (Feb 15, 2013)

  • Bug fix: changed Favourites dialogue to display snippet display names instead of unique names. Fixes bug #72 (http://bit.ly/Vj6ZCM).
  • Updated program copyright date in About box.

New in CodeSnip 4.2.0 (Feb 8, 2013)

  • Added support for "favourite" snippets. Implements feature request #37:
  • Any displayed snippet can be flagged as a favourite via a menu option or toolbar button.
  • A new non-modal dialogue box can now be displayed alongside the CodeSnip window for easy selection and management of favourite snippets.
  • Changes to Duplicate Snippets dialogue box:
  • Display name of duplicate snippet can be edited. Implements feature request.
  • Snippets Editor can be opened immediately the Duplicate Snippet dialogue box closes to edit the duplicated snippet. Implements feature request #65.
  • Status bar changed: first panel now displays no category information, but displays both total number of snippets and number of snippets in each database.
  • Fixed unreported bug in save dialogue boxes where overwrite permission requests could be displayed erroneously.
  • Program closes gracefully if run on unsupported versions.
  • Updated some 3rd party code to latest available versions.
  • Some refactoring.
  • Per-user configuration file format changed to v11 which is not fully compatible with older versions of CodeSnip.
  • Updated help file re changes in Duplicate Snippets dialogue box and addition of support for Favorites.
  • Updated documentation.

New in CodeSnip 4.1.1 (Jan 31, 2013)

  • Fixed bugs:
  • Comments missing in unit / code generation for some types.
  • Changing syntax highlighter font has no effect in main display.
  • Option to select monochrome printing not working properly.
  • Unreported: Changing syntax highlighter font has no effect when printing or when copying text to clipboard as RTF (related to bug #70).
  • Updated help file re syntax highlighter changes.

New in CodeSnip 4.1.0 (Jan 6, 2013)

  • This is the first non-beta release to made available in both standard and portable editions, compiled from a common code base.
  • The portable edition differs from the standard as follows (as per release v4.0.1 portable beta 1):
  • Executable file name is CodeSnip-p.exe.
  • Program caption identifies program as portable version.
  • Data directories are sub-directories of executable program directory.
  • Common file dialogue boxes default to program's working directory.
  • First run processing does not give the option to import old settings or existing user databases.
  • Different version information and program identifier.
  • There is no set up program.
  • Changes to snippets editor:
  • Added context menus to cross-references and dependencies check box lists. Both have menu item to clear list. Dependencies list has item to view dependencies. Implements feature request #3560960 (http://bit.ly/U83Swh).
  • Deleted "View Dependencies" button now that its functionality is now on context menu.
  • Enlarged various controls on all except "Code" tab.
  • Units listed on "References" tab is now persistent. Units can be removed, defaults restored and selection cleared via a new context menu. Implements feature request #3560962 (http://bit.ly/UM0c0B).
  • New source code formatting option added to only use first paragraph of a snippet description as snippet comment in generated code. This is configured via "Code Formatting" tab of "Preferences" dialogue box and / or from relevant "Save" dialogue boxes. Implements feature request #3560647 (http://bit.ly/UQrDax).
  • Changed mini-toolbar in overview pane to expand / collapse all overview tree view instead of just selected node. Implements feature request #3560646 (http://bit.ly/UOUQTr).
  • Reimplemented database search engine.
  • Some external links modified that will seamlessly accommodate future changes in destination URLs.
  • Changed some glyphs used in menus.
  • Per-user confuration file format changed: bumped file version to 10.
  • Some refactoring.
  • Help file updated re changes & added privacy statement to TOC.
  • Updated documentation:
  • Re changes to source code repository and bug / feature request trackers.
  • Re portable version.

New in CodeSnip 4.0.2 (Dec 18, 2012)

  • Improvements to keyboard handling:
  • Fixed some keyboard focus bugs.
  • Fixed broken, missing and duplicate Alt-key shortcuts in several dialogue boxes.
  • Fixed broken keyboard access to list view in Code Generation tab of Preferences dialogue box.
  • Corrected an incorrect font in Compilers dialogue box.
  • Added title to "View Link" dialogue box displayed from mark-up editor.
  • Corrected error in "Submit Code to the Database" task help topic.

New in CodeSnip 4.0.1 (Dec 10, 2012)

  • Fixed bug #3578652: Pre-processor directive errors in main db ini files by removing support for problematic directives.
  • Rolling mouse over links in detail pane no longer displays a hint in the status bar. This change fixes bug #3577407: Clicking detail pane snippet link leaves hint in status bar.
  • Windows no longer scale automatically when screen DPI differs from that on design system. This fixes bugs #3591818 "Strange window behaviour in Windows 7" and bug #3591820 "Incorrect font size used for some bold text".
  • Update operating system detection code to detect Windows 8 & 2012 server.
  • Some refactoring and some redundant code removed.
  • Updated documentation.
  • Updated help topic that describes main display.

New in CodeSnip 4.0.0 (Nov 29, 2012)

  • New glyphs that describes level of testing applied to snippets from online Code Snippets Database now appear in top right of detail pane.
  • Changed main window caption and task bar entry to include version number "4" after program name.
  • Fixed bugs:
  • Automatic conversion of blank lines to paragraphs in REML markup editor gets confused if block level tags are already present.
  • Unreported: Controls in News dialogue box do not use correct font.
  • A little refactoring.
  • Updated help file:
  • Modified re recent changes
  • Added new "What's new" topic giving details of changes in v4. Implements feature request
  • Renamed "Welcome" page as "Overview".
  • Updated documentation, including read-me file.

New in CodeSnip 4.0.0 RC 3 (Sep 18, 2012)

  • Fixed serious bug #3568628 (http://bit.ly/V5NX0H): CodeSnip faulting at startup after fresh install with no previous v3 installation.

New in CodeSnip 3.11.0 (Sep 18, 2012)

  • Added support for Delphi XE3 compiler. Implements feature request #3566345
  • Bug fixes:
  • The Category view in the Overview pane sometimes appears fully expanded when it is expected to be fully collapsed.
  • About Box Paths Page displays wrongly when themes not available.
  • Updated documentation re changes.
  • Updated help file re changes.

New in CodeSnip 4.0.0 RC 1 (Sep 15, 2012)

  • UI changes:
  • Welcome page completely revised. Instead of a program overview the page now describes the state of the databases and available compilers and displays help links and a donation request. There are also some links to the about box, news and program updates.
  • Many changes to glyphs used in menus and toolbar.
  • Removed some images that relate to trade marks, i.e. PayPal Donate button and Delphi compiler icons.
  • No clicking noise is now issued by UI in response to user interaction with Details pane.
  • Links to external commands and to other snippets re-styled.
  • Revised and updated program's main icon.
  • Fixed bug #3566426 (http://bit.ly/OmbwTB): About Box Paths Page displays wrongly when themes not available.
  • Added support for Delphi XE3 compiler. Implements feature request #3566346 (http://bit.ly/SIVpS2).
  • Completely new Easter Egg.
  • Refactoring and internal code changes, including a revision of the "external" object that communicates with JavaScript in browser controls.
  • Changed License:
  • EULA for excutable code changed to Mozilla Public License v2.0.
  • Most original source code changed to Mozilla Public License v2.0 from v1.1.
  • Only an abbreviated version of the license is now displayed by the installer and in the help file.
  • License information has been consolidated into a new file: License.html.
  • About box changed re new license and changes in required and voluntary acknowledgements and credits.
  • Help file updated.
  • Documentation updated.

New in CodeSnip 4.0.0 Beta 2 (Aug 27, 2012)

  • Bug fixes:
  • #3556620: Serious flaw in generating units containing class types when the classes contain method types other than procedure or function.
  • #3556713: Context menus are not displayed when pressing Alt+F10.
  • #3556715: Deleting a category then returning to it via the history list causes a GPF.
  • #3556718: Inconsistent context menus for edit controls in Snippets Editor.
  • #3557107: New snippets and categories are not added to the history list.
  • #3558649: Closing the Preferences dialogue always refreshes the main display even if the dialogue box was cancelled or if nothing was changed.
  • #3559156: "Previews" giving examples of the effect of changes made in the Preferences dialogue box sometimes disappear when the tab key is pressed.
  • #3559239: Snippet names and display names are used inconsistently in the UI.
  • #3559257: Compile Results displayed from the main menu can get out of sync with the actual compile results of snippets that have been edited since they were last compiled.
  • #3559265: Viewing dependencies for an un-named snippet or a snippet not in the database causes a GPF.
  • #3559266: When include files are generated for a snippet that depends on a class type, the required class is not listed in the file's header comments.
  • #3560317: The caption of the Active Text preview dialogue box refers to "Extra" text when it is used to preview a snippet's description.
  • #3560521: The state of the Overview tree often doesn't restore correctly after a database update.
  • #3560958: Snippets are not sorted correctly (i.e. on display name) in the Overview pane.
  • #3561014: The current view in the Display pane is not cleared, wven though all tabs are closed, when the database is re-loading.
  • #3561047: The Category view in the Overview pane sometimes appears fully expanded when it is expected to be fully collapsed.
  • Untracked: Removed "(v4 preview)" text that had been left in main window title bar.
  • Untracked: Minor accelerator key related problems in the Preferences dialogue box.
  • Main UI changes:
  • The Detail pane tabset now has a context menu that can be used to close the current tab or all but the current tab. The Close tab option is also added to current view's context menu.
  • Right-clicking a tab in the Overview or Detail pane now selects the tab.
  • Middle-clicking an item in the Overview pane now selects it. Previously middle clicks were ignored.
  • Many more parts of the main display and dialogue boxes now display display names for snippets rather than unique names.
  • Ctrl clicking snippet and category links in the Detail pane and History UI controls now opens the chosen item in a new tab. Implements feature requests #3559377 and #3559378.
  • Different link styles are now used for the different types of link in the Detail pane. Implements feature request #3559464.
  • Pressing Ctrl+Return on an active snippet or category link in the Details pane now opens the item in a new tab instead of the current tab. Pressing Return now opens the item in the current tab.
  • The Detail pane's context menu now displays more options when text selections and links are right clicked. Implements feature request #3559375 with some minor differences.
  • New button added to the Display tab of the Preferences dialogue box that resets default snippet heading colours. Implements feature request #3559140.
  • The "Types" unit is now displayed by default in the Snippets Editor Reference Tab's predefined units list.
  • When a category is printed, any URLs in snippet descriptions are output and styled.
  • Names of units referenced by snippets may now contain dots.
  • Some refactoring and internal code changes, including a major reworking of the "first run" program configuration and a revision to the "external" object that communicates with JavaScript in browser controls.
  • Help file updated:
  • Re UI changes.
  • With a description of the need to configure namespaces for Delphi XE2 for each unit referenced by the code it is test compiling - addresses bug #3536531
  • Updated documentation.

New in CodeSnip 3.10.5 (Aug 21, 2012)

  • Fixed bugs:
  • Compile Results accessed from menu can get out of sync.
  • "Previews" disappearing in Preferences dialogue box

New in CodeSnip 4.0.0 Build 202 Beta 1 (Aug 17, 2012)

  • New features:
  • Structure of snippet pages in details pane is now customisable: various page elements can be omitted and order of elements can be specified. Each snippet type has its own page customisation. Implements feature request #3519456
  • Snippets can now have a "display name" that can contain any characters and does not need to be unique. When provided the display name is displayed in preference to the normal name. Implements feature request #3519460
  • Snippet descriptions can now be formatted and contain multiple paragraphs. This implements feature requests #3411890 and #3520405
  • Snippets can now be configured so that their source code is not syntax highlighted. This change allows snippets in other languages not to be highlighted as if they are Pascal. Implements feature request #3519935
  • Colour of headings for snippets and categories from main and user databases are now user configurable. This implements feature request #3519463
  • User can now limit the number of compilers that appear in the compiler results table in the display pane. This is done via the Configure Compilers dialogue box. Implements feature request #3519459
  • New option on Tools menu that checks availability of new versions of CodeSnip.
  • User interface changes:
  • "Test Compile" link removed from snippet display in details pane.
  • "Test Compile" dialogue box changed so that only the installed compilers that CodeSnip uses for test compilation are displayed, instead of all known compilers.
  • Welcome page revised.
  • Changes to snippets editor:
  • New field on Code tab to enter optional snippet display name.
  • New check box on Code tab to specify if Pascal syntax highlighter is to be used for source code.
  • New tabbed "markup editor" lets user enter multi-paragraph snippet descriptions and extra information either as plain text or as REML markup.
  • Controls on Code tab re-ordered.
  • Extra Information tab revised with much larger edit control and deletion of explanatory text.
  • Editor enlarged.
  • Changes to Preferences dialogue box:
  • New "Snippet Layout" tab added where composition and layout of snippet pages can be customised.
  • "General" preferences tab split into two: "Misc." that contains only measurement units and "Display" that contains display related options.
  • Added controls to "Display" tab to set main and user database heading colours.
  • Changes that affect appearance of content of details pane are now reflected in the display as soon as the Preferences dialogue box closes, rather than on program restart.
  • Changes to REML markup handling:
  • Any REML text not embedded in block level tags is now automatically wrapped in tags.
  • Nested REML block level tags are no longer allowed.
  • Changed handling of multiple spaces in REML code to be the same as in HTML.
  • Formatting of REML code improved when re-displayed.
  • Bug fixes:
  • Bug #3536331 fixed: words at the end of some paragraphs in a snippet's extra information were not being found in "whole word only" searches.
  • Fixed unreported file parsing bug that occurred when loading a saved snippet selection from disk.
  • Changed Delphi compiler detection so that compilers can be detected by examining current user registry key in addition to local machine registry key. This enables Delphis that were installed for a given user only to be detected.
  • Improved error handling when reading and writing snippet selection files.
  • User database and export file formats updated to v6.
  • Per-user confuration file format changes: bumped file version to v9.
  • Major changes to installer:
  • Now always brings forward any earlier common config files if needed.
  • Per user configuration files are now ignored: they are handled by main program (see below).
  • Only main database, not user database, is now imported from earlier versions on user request. User databases are now handled by main program.
  • There is no longer an option to delete old databases or configuration files.
  • Updating from a v4 preview (alpha) release causes an extra page to be displayed that gives instructions relating to updating from preview to current release.
  • Program now detects if it is running for first time since updating:
  • If this is first run since updating from v3 or earlier a "first run" wizard guides user through importing any old preferences or user databases.
  • For point v4.x point updates user configuration file is silently updated as necessary.
  • Significant refactoring.
  • Updated help file in line with changes and new features.
  • Updated documentation, including minor changes to privacy statement and license.

New in CodeSnip 3.10.4 (Aug 17, 2012)

  • Added support for displaying pop-up menus over appropriate control when Alt+F10 is pressed. Fixes bug #3556713
  • Changes to snippets editor:
  • Added missing edit context menu to "add unit" edit control on References tab. Fixes bug #3556718 as it relates to v3.
  • Predefined list of units in Units list on References tab now includes the "Types" unit.
  • Referenced unit names may now contain dots.
  • Snippets Editor help topic now explains need to configure Delphi XE2 compiler to search namespaces containing referenced units. This provides a solution to bug #3536531

New in CodeSnip 3.10.3 (Jul 26, 2012)

  • Changed so that Delphi compilers can be detected by examining current user registry key in addition to local machine registry key. This enables Delphis that were installed for a given user only to be detected.
  • Fixed bug in Compiler tab of Configure Compilers dialogue box that failed to flag selected compiler as unavailable after button was pressed.

New in CodeSnip 4.0.0 Alpha 3 Build 199 (Jun 20, 2012)

  • New features:
  • Compiler warnings can now be switched on as well as off in generated code.
  • Names and descriptions of snippets in a category can now be printed.
  • Text and compiler searches can now be nested so that the later search refines the earlier one.
  • Current selection (i.e. search result set) can be saved to disk and loaded again later.
  • User interface changes:
  • Overview pane now displays buttons that can be used to collapse or expand non-empty section headings.
  • Ctrl + arrow keys can now be used to scroll overview pane tree view vertically and horizontally without changing selection in overview pane.
  • Main window is now refreshed whenever changes that affect it are made in the Preferences dialogue box.
  • Some main menu shortcut keys changed.
  • Dependencies dialogue box now has two tabs: the first displays the snippets required to compile the selected snippet while the second tab displays snippets that depend upon the selected snippet.
  • Code Generation tab of Preferences dialogue box updated to enable warnings to be switched on or off. In addition default warnings can be restored, list view columns can be sorted and Alt key shortcuts tweaked.
  • Code Import dialogue box improved: now sorts imported units in list view and scrolls to make renamed snippets visible.
  • Snippet selection and cross-reference search dialogues now report if existing search results will be overwritten.
  • Text and compiler search dialogues now ask if any current search results are to be refined.
  • Tree views in Snippet Selection, Snippets export and Snippets submission dialogue boxes can now be expanded and collapsed.
  • Appearance of message boxes tweaked.
  • Program tab of About box updated with credits for new third party code.
  • Bug fixes:
  • Error in logic of code that generates program ID was fixed.
  • Bug #2868708 fixed (http://bit.ly/KeyAvS): edited snippets are no longer lost from manual snippet selections unless snippet names are changed.
  • Bug #3534138 fixed (http://bit.ly/Mg9gJG): details pane display is now cleared when last tab is closed: previously content of last closed tab remained on screen.
  • Info about user's OS and IE version is now sent to web server during online database updates.
  • Some refactoring.
  • Help file updated in line with changes and new features. Some US English spellings changed to UK English for consistency.
  • Updated documentation, including:
  • Privacy statement updated re changes in data recorded via database update logons.
  • Licensing docs updated re introduction of some MPL 2.0 files.

New in CodeSnip 3.10.2 (Jun 20, 2012)

  • Fixed bug #3536331 (http://bit.ly/KQVATf) where some distinct words in a snippet's Extra text where not being found in text searches.
  • Info about user's OS and IE version is now sent to web server during online database updates.
  • Updated privacy statement re changes in information sent by update web service.

New in CodeSnip 4.0 Alpha 1 Build 195 (Feb 4, 2012)

  • The new multi-tab display that can show more than one snippet, category etc. in the main display. Control click items in the overview pane to display them in a new tab in the detail pane. Alternatively select View | New Tab (Ctrl+T) to display a new empty tab that can display selected items. Press Ctrl+F4 to close a tab.
  • Results of test compilations (F9) now appear in a dialog box.
  • You can specify the paths to be searched by the Delphi compilers when looking for used units. This lets you compile snippets that use units other than those provided in the VCL and RTL. For example you can specify a path to the Indy components to compile them. Use the Compilers dialog box to set the paths on
  • a per-compiler basis.
  • You can use Unicode source code.