Multi-Edit Version 9.10.03 June 16th, 2004 Updating Keymaps and Config Files Version 9.10 will automatically handle updating most keymaps and configurations, even in the network version. However, there are cases where the modifications you have made can confuse the converter. If your Keystrokes, Toolbars, or Menus do not seem to be working, then you may want to start from a default keymap. Help Multi-Edit now includes a version of Help in HTML Help form. It requires that IE 4.0 or newer and the HTML Help engine be installed. The Installer automatically updates the Help Engine for you. If you have Win98, ME, Win2k, or XP this is all pre-installed. Ftp Extensions The Internet extensions in Multi-Edit, including the FTP support, require the use of Microsoft Internet Explorer 4.0 or newer. Revision History For the latest revision history, check the Multi-Edit website http://www.multieditsoftware.com 9.10.03 Trita/Polystyle Renamed our Trita support to Polystyle to reflect their corporate and product name change. To obtain the latest version of Polystyle visit their site at http://www.polystyle.com/download and download the Polystyle IDE Integration Distribution Pack. Install it into a Polystyle directory under the main Multi-Edit directory. Tools Added a "Create HTML from code" entry to the Tools menu. Convert Tabs Added a new Text menu entry "Convert Tabs" which runs the ConvertTabs macro. This macro checks the value of the "Tools | Customize | Editing | Tab expand" option. If it's set to "Tabs," the macro calls the EnTab macro to convert spaces in the current file to the correct number of tab characters; if set to "Spaces," it calls the DeTab macro to convert tab characters in the current file to the correct number of spaces. VCS (Subversion) Added basic Subversion version control support Search.s, RegExp.s Added Perl Regular Expression support to Find_Text, Search_File, SearchHighlight and Collapse functions Note on current limitations: backward searches and multi-line searches aren't yet supported for Perl-style regular expressions. These features will be added in an upcoming update> FilePane.s, WinList.s, Project.s (Pane dialogs) Added support for user-configurable context menus for the FilePane and Window List dialogs. To configure them, select the "Edit this menu" from the context menu of each dialog. TmplPane.s, PreviewPane.s Templates can now be previewed in the Preview pane by selecting the "Preview" entry from the context menu of the TmplPane dialog. Setup.s, ImpExp.s (Settings export) Basic support for exporting configuration setting has been added to the Tools | Customize dialog. Select the Import/Export entry to use. This will allow exporting selected setting to a .upd file that can then be added to another Multi-Edit copy by running the "Update /F=filename.upd" macro command, where filename.upd is the name of the file created by the Import/Export dialog. Update.s (Add-On install/manage dialogs) Fixed bug where project list wasn't being updated on Enable/Disable and Uninstall/Install. Paste.s Fix to allow correctly appending stream blocks to the end of a buffer in Cut. MeTools.s Added a support macro for creating per-file global variables that aren't dependent on the GUI (the file need not be loaded, nor even loadable). Used in both MeTags and BSC code. Improved the Environment variable metacommand to handle up to 2048- byte variables. KeyTest.s Added support for calling Find_Assign from the Tag macros. Dialog.s Fixed bug where maximum length of a choice control wasn't being set correctly. Fixed a bug where the key entered wasn't being shown in the key assignment box after selecting a new key in the Command Mapping dialog. Complete.s Added case sensitive searching option to Complete macro. CSup.s, TDbug.s, TipWin.s Added support for language specific completion support. Increased the number of lines the TdbgCreateTraceBlock searches opening curly-braces. MeTags.s Added /NSD= parameter to Tag_Locate to control skipping the multiple-tag selection dialog more intelligently. Tag browse file dialog is resizeable and remembers last position for every file. Also returned the result in Return_Int, which is necessary for some macros, including BSC (tags are used when symbol isn't found in database). CMacUtil.s Added code to keep the temp window used by the "View | System" dialog from being saved upon shutdown. Ascii.s Removed some extra template markers. 9.10.02 File Types Fixed problem where converting between different file types, i.e Unix -> Pc, Pc -> Mac, Mac -> Unix etc wasn't working. File Menu Added a new "Save Copy As" entry to the File menu to allow saving the current file to a different directory or under a different name without changing the loaded file's name or directory. Macro Menu Added a Debug Setting entry to allow changing the messages that are sent for all TDbg enabled macros. Also compiled all macros with the _Debug_ flag so that all that have TDbg code in them can be controlled by the Debug Setting dialog. Pane Dialog Notify Messages The PanesNotify macro was added to allow pane dialogs to send specific notify messages to other dialogs. The Project.s macros now use this macro to send the following notify messages: wcmd_PrjChange - Sent to notify of a new project being loaded. wcmd_PrjOptions - Sent to notify of the Project Options being changed. Context Menus Added partial support for user-added context menus in dialogs. Currently, only the File Pane and the Project Pane support this. These dialogs have a new "Edit this menu..." entry added as the last entry in the context menus. This brings up a dialog that allows the user to add commands to the specific context menu. See the SetupOtherMenu, AddToContextMenu and AddEditThisMenu macros in the Menus.s file for more details. Data_In Dialogs Fixed bug where Comboboxes in dialogs created via a Db would not show the last entry in the drop down list. StdDlgs Fixed VerifyDlg so that it returns the correct value when the Cancel button is selected. UserIn The UserIn1.s and UserIn2.s were merged into UserIn.s macro file. SPrintF Fixed bug with %f processing to get the correct parameter data. Post Load macro error Fixed bug in Post Load error message which showed a truncated macro name when diplayed when a macro wasn't found. Hex Edit Fixed Hex edit not working correctly in insert mode. 9.10.01 Network Install Multi-Edit can now be installed to run in a network environment. User configuration directory is set by using the Me91_Cfg_Dir environment variable. 9.10.00 Evolve Added Evolve to the default install. Spell Check Added updated main spell dictionary 9.10.00 rc1 Help Files The main Multi-Edit Help file has been updated to reflect the new features. Code Formatter Added support for code formatting and Trita is the first one added. "Format Code" and "Config Code Formatter" menu entries have been added under the Tools menu. The "Format Code" command is assigned to the Alt+Shift+F key by default. File Prompt Updated the Explorer style file prompt dialog to add the Mac style file type. 9.10.00 beta 2 Add-On Packages Add-Ons packages have been moved into an AddOns directory to make it easier to locate and manage these packages. Borland and Microsoft Integration Added option to their configuration dialog to allow syncing all files loaded in the IDE instead of just the current file. Block Indent Fixed bug where indenting a stream marked block would only indent the block once then unmark the block. Session Manager Fixed code so that old session files will be correctly loaded. File Compare Added code so that hitting the Cancel button in the external compare dialog will abort the compare. Project Fixed a focus problem when bringing up the Project specific notebook dialog. File Search Added code to allow ignoring hidden directories during a file search. Note: the File search dialogs haven't been updated to include the option yet. TipWin Configuration dialog added to the main Customize dialog tree. Dialog is still accessible in standalone form as TipWin^TipWinGlobalConfig macro. Automatic function templates Automatic expansion can be configured using new options which control when expand and expansion result. Options are available under TipWin configuration dialog. 9.10.00 beta 1 This is the first beta of the 9.10 series of Multi-Edit. We are planning a series of releases over the coming year. The first release will include most of what was listed on our forum and the rest of the features will be added in future releases. These betas are open to the public. Multi-Edit now requires a valid serial number and a corresponding release code to activate. This allows one release that can be used for evaluation and later updated to a full release by providing a new serial number/release code. All betas have a built-in expiration date of 60 days from the time they are compiled. A new beta or release will be made available before the current beta expires. The public beta serial number / release code will be limited to 30 days and will not contain any of the macro source files (*.s). Users can purchase a full or update copy of Multi-Edit 9.10 now and will be issued a valid serial number/release code. These will be valid for all betas and the release although the betas will still have the 60 day expiration date. One benefit of purchasing now is that you will receive the full macro source (*.s) files even during the beta. Executables The Mew32.exe and MeLib.dll have been compiled with a new exception reporting library. This should help with tracking down issues where an exception is thrown which causes Multi-Edit to shutdown. The MewLib32.dll/.sh files have been renamed MeLib.dll/.sh. Thus in all user written macros that include MewLib32.sh it should be changed to include MeLib.sh instead. #include MewLib32.sh -> #include MeLib.sh File Compare Added field to file compare configure dialog to allow entering a program name to use to do file compares. Dialogs Added support for resizable dialogs. The Edit Templates dialog has been changed to use the new code. Added support to dlg_DirButton dialog controls to allow passing a /FILE=1 flag to cause it to bring up the File Select dialog instead of the Directory Select dialog. Also the /FM=str can be passed to specify the file mask to use. Network Network support has been changed to be available in all versions of Multi-Edit. Startup Code has been added to do serial number/release code and network user count checking upon installing and running Multi-Edit. TipWin New tooltip windows used for displaying function definitions. Multi-line, highlight current parameter, ability to use colors, and user configurable. Generic language support allowing to add new languages. Currently C/C++, CMAC and Delphi/Pascal are supported. MeTags, BSC and CMAC kernel function list are used as info source and it is possible to add new ones via hooks. Automatic function templates This feature allows automatically expanding function parameters as a template when open parameter parenthesis is written. Currently configured via TipWin configuration dialog (TipWin^TipWinGlobalConfig). Supports the same set of languages as TipWin. Macro Debugging DebugLog macro uses standard Win32 debug output for log number 0 and GExpert Debug Window application for log number 1. Added TDBG trace library (see tdbg.sh for details) which allows to write code without conditional compilation directives and configure traces via dialog whenever necessary. Supports traces from external DLLs. Telnet Added a MeTerm program to handle all telnet compiling. Also moved the telnet server information into its own database so a compiler entry no longer needs to be tied to a single telnet server. Ada tag support. Added full support for tagging Ada source files. Line Ending Added an EolType field to the Line record which would contain a byte/word that represents the line ending characters being used. EolType Value Description _eolt_None 0x00 Binary or virtual line breaks _eolt_LfOnly 0x01 Unix style files _eolt_CrOnly 0x02 Mac style files _eolt_CrLf 0x03 Dos/Windows style files Modified the line parsing routines to do the following Scan lines for Cr or Lf Break line when one is found If break at Lf set EolType = _eolt_LfOnly Elseif break at Cr and next char is Lf, set EolType = _eolt_CrLf Else set EolType = _eolt_CrOnly This will allow support of files with multiple line ending characters and support for Mac style files. The current Line_Terminator was changed to a DefaultEolType and is used to determine the EolType used for any new line added to a file. Scc and Perforce Changed code to allow Perforce support via SCC. C/C++ language support CFindFunction macro completely rewritten and should work with any reasonably written code. Reports correct context information for functions, classes, structs, unions, enums and namespaces. "Align continuation lines to opened braces" option added to Formatting/Coding Properties Setup dialog. When enabled, it aligns code as follows: ALongFunctionCall(Param1, Param2, Param3, Param4, Param5); Added function header parsers which allow writing macros and templates parametrized by real functions. As an example there is a macro which creates Doxygen comment block and a macro which creates TDBG traces displaying all function parameters on enter and return value on leave. WinList Add-On Updated WinList to add support for most of the additional functions available in the old Window List dialog. FilePane Add-On Added a new navigation pane which provides convenient access to a set of commonly used files or directories, similar to the Favorites menu in a web browser. TmplPane Add-On Added a new navigation pane that provides convenient access to a set of templates appropriate for the currently selected file. BSC Add-On Support added for using VS.NET compiler. Known Issues The Perl 5 Regular Expression support hasn't been enabled because of some interface issues that need to be resolved. The Macromedia integration support is missing since their IDEs are hard coded to only work with Multi-Edit 9.0. We are investigating ways to get around this. If the support is still needed please let us know that you want it.