- Added first version of IDE add-in interface. A new add-in SDK has been created.
This release focuses on the project pane and source code windows. Depending on
interest, this will be extended to other areas in the future.
- Added custom keyboard mapping. You can now redefine most keys. The
menus will automatically display the correct accelerator key.
- Added Output tab. It's now possible to capture the output of console
mode applications to this tab. A good candidate for this is
Splint (Splint is a tool for statically
checking C programs for security vulnerabilities and coding mistakes).
- The source editor can now jump to the definition of a symbol (at least
all definitions that CTAGS understands). The browse information needed for
this is built with other project files. The very first project build will
also build the system definitions (that is, all include files that
Options -> Folders -> Includes are pointing to). The system definitions
are around 16 MB on my machine.
- Added support for module definition (DEF) files as part of a project. The DEF
file(s) will be displayed in the project tree. A new syntax parser for DEF files
has also been added.
- Added new project wizard for DLLs.
- Added basic support for Smartphones.
- The handling of exported/imported symbols has yet again been revised in
the library manager and the linker. Several bugs have been fixed. Ordinal
numbers should be handled better. The whole management should be closer
to Microsoft (we hope).
- Added support for module definition (DEF) files and machine classification
(ARM) in the library manager (POLIB). It's now possible to extract members
without specifying the full member path.
- Added minimal support for drivers to the linker.
- If a module definition file has a .DEF extension, it can be specified
directly on the linker command line, without the /DEF: option.
- The CAB Builder for Windows CE now handles CPF (CAB Provisioning Format)
files correctly on Smartphones.
- Added more alignment buttons to the toolbar of the dialog editor.
- The IDE will now remember bookmarks between sessions (only when a
project is active).
- The IDE will now try to clear the 'dirty flag' for a window, when
everything has been undone.
- All known font names will be displayed on the Source tab in Options
(not just ANSI charset).
- The splash screen can now be disabled.
- The IDE will not check if files in recent file and project lists are
present, when located on "slow" drives (removable or network drives).
- The IDE will now automatically create any missing target directories,
typically the output directory.
- The IDE will now automatically load the last used project at startup
(if so requested). Document windows will not be re-opened, but this might
be added in a future version.
- Added support for entering non-existing file names in the dialog for
Add file to project... The file will be created automatically (as
a text file).
- Added support for comments in project ZIP files.
- Added 'Change' button to Macros tab in Project Options.
- The source editor will now reject control characters by default. It can
be enabled for a window through the property page.
- The source editor can now optionally display line numbers in the margin.
- The source editor will no longer display a message box when wrapping past
the beginning or the end of the file. Replaced by a nice beep.
- The source editor will now display a message box with information about
number of replacements after 'Replace all'.
- The source editor will now try and snap the caret to the closest
location after a mouse click (not always to the left).
- The source editor will now treat line breaks as a 'word', when using
Ctrl+Left arrow or Ctrl+Right arrow.
- Added Exception tab to the debugger. By double-clicking one of
the known exceptions, you can toggle if the debugger should always
stop on this exception (first chance) or not (second chance).
- The debugger will now also check for outdated source files
(newer than the associated module).
- The debugger will now also automatically set a breakpoint at WizMain() -
for easier debugging of project wizards.
- Added (some) support for debugging DLLs. An executable helper may now
be selected in the project options. It's up to you to write that app.
- Added ctagsapi.h and ctags.lib to the distribution. Contains
definitions for ctags.dll which can be used to build, or query, CTAGS
'databases'. Used by POIDE.
- Added appmgmt.h, shappmgr.h, shdispid.h, shobjidl.h
and shtypes.h to distributions.
- Added runtime functions _strnset and _wcsnset.
- Added _tcsdup, _tcslwr, _tcsupr, _tcsnset
- Added condition to oaidl.h so that defining _FORCENAMELESSUNION
shouldn't be needed to get a proper VARIANT declaration.
- Wizards without a description string will now be loaded, but with
the file name displayed instead.
- Added improved HEAP management: virtual memory will not be reserved
during startup but rather on the first call to a CRT memory function
(malloc, realloc). A new CRT variable for maximum HEAP size
has been added: __crtheapsize. It will be initialized to 256 MB for
EXE files and 32 MB for DLL files. If you want another size, change this
variable before the first call to malloc or realloc.
- Bugfix: Newly created resource files (icons, cursors, bitmaps, ...)
wasn't always saved to disk from the IDE.
- Bugfix: Couldn't scroll debugger tabs left/right when they didn't
fit into the debugger pane.
- Bugfix: The disassembler in the debugger sometimes added stray
arguments to the opcodes. Fixed.
- Bugfix: The debugger will now at least try to activate the
console application window when resuming execution.
- Bugfix: Only one MANIFEST resource is now allowed in the IDE.
- Bugfix(?): The caret was reported missing in action while switching
between applications. I couldn't reproduce this, but tried to re-arrange
the code anyway.
- Bugfix: Find in files could crash for matches on long lines.
- Bugfix: Source editor undo data for replace didn't preserve case.
- Bugfix: Pasting multiple lines of text will place the caret in a
better position than on the first visible line.
- Bugfix: The owner-draw menus needs extra check for MDI system menus
since they are not signaled as 'system menus' by Windows.
- Bugfix: Using more than one exception_info in a source file
made the compiler crash. Ugh!
- Bugfix: The IDE wrote VK_ESCAPE as ^[ to the resource script. The resource
compiler wasn't impressed.
- Bugfix: The project pane is now closed when New Project is selected.
- Bugfix: New Project is now disabled while building a project.
- Bugfix: The resource compiler didn't like parenthesis in dialog styles.