Hello All,
This is a compilation of all the changes made to Code::Blocks this month. The first week of April was declared as a bug-fix week and a number of bugs were fixed. A large number of patches were applied to the core.
Please Note: This is NOT a Release Announcement. The report is based on Commit history and for information only.Among the notable improvements:
- Windows build is switched to wxWidgets-2.8.3
- Added Advanced Regular Expression support.
- Added Custom Build command support to Projectfile.
- Code-completion now accepts '.', ';' or any other characters and this list can be customised.
- Now it's possible to add additional controls to wxSmith.
- Codesnippets plugin got huge update.
- wxWidgets wizard got a facelift. Added to the target list.
- Improved virtual folder management.
- A lot more fixes..
Detailed changelog is as follows.
============================================================
Core:
----
* Fixed some 'make dist'/srcdir issues
* Fixed: [Bug #10797] Renaming a file to an existing file deletes old file (By applying modified [Patch #1939], thx pauliusz)
* Fixed: [Bug #10792 and Bug #10798] Sent twice Parameters to external tools (By applying modified [Patch #1941], thx pauliusz)
* Project file options dialog now shows parent project's compiler.
* Fixed: Couple of wrong uses of "..." in various menus and pop-up menus.
* Build progress bar now gets cleared if a build fails.
* Fixed: [Bug #10822] Missing PlaceWindow on non-windows platforms
* Now an inactive project will not be activated to show Build options.
* Fixed: [Bug #10695] folders. Now if "Remove {folder}\*" menu option is selected, only files under that node will be deleted.
* Fixed: [Bug #10817] completion: closing last file (By applying [Patch #1955], thanks pauliusz)
* Added setting for using advanced regular expressions in "Find" and "Replace". Setting can be found in editor options (patch #1701).
* Fixed: [Bug #10781] ToDo list is not updated when another file is activated in Editor.
* Now menu option "Edit->Special commands->Case" will be disabled if no selection in editor (patch #1946).
* Added entries in editor's context menu to uppercase/lowercase the current selection (patch #1942).
* Added hint about a couple more useful macros in tool editing dialog (patch #1856).
* Various editor commands now check if the open file in editor is read-only and are disabled accordingly (cut, paste, delete, etc).
- Added EditorBase::IsReadOnly() and also exposed it to scripts.
* Added get/set functions for custom build commands in projectfile and also exposed them to scripts (patch #1743).
* Open external terminal for I/O when debugging console apps under linux (patch #1882).
* Fix in symbols browser, where it would fail to detect the active editor's filename in some special cases (patch #1559).
* Fixed parsing of flat profile for large counts in profiler plugin (patch #1551).
* Notify all debugger plugins for breakpoint lines changes (patch #1625).
* Destroy statusbar instead of hiding it, when disabling it with View->Statusbar (patch #1688).
* Fixed 'update' script (not the .bat) to work correctly if used under MSYS (patch #1951).
* Added commenting/uncommenting support for multiple languages, not only C/C++ (patch #1839, part 1).
* Added smart indent (as you type) support for python (patch #1839, part 2).
* Moved macro expansion of $objects_output_dir in compiler commands generator after $options macro is expanded, so the former can be used in the latter (patch #1742).
* Revert to global scope search using F3, when deselecting selected text (patch #1879).
* Removed incorrect error message when using SaveAs for a project or workspace and pressing cancel (patch #1956 for bug #10857).
* Removed hotkey (Ctrl-Alt-E) from "View->Focus editor" because it would prevent input of certain non-ascii characters (bug #10843).
* Fixed: [Bug #9596] Wrong path when adding files and [Bug #10821] Multiple files are added to wrong folders.
* Fixed: [Bug #9233] include directories are not parsed after using Wizard
* Fixed: Improperly updated 'Cut' menu items and toolbar icon (Applied [Patch #1958], thx pauliusz)
* Fixed: Couple of other menu item update issues.
* Fixed: [Bug #10802] ctrl-shift-w can cause c::b to crash
* Updated Qt4 Wizard. Now it should work in Linux.
* Fixed: [Bug #9409] qt wizard: searching for libQtCore4 in lib dir (linux)
* Now Startpage will not be closed if the wizard is cancelled.
* Fixed: [Bug #10898] Build configuration is duplicated when overwriting a project
* Fixed: [Bug #10905] No target is equivalent to all targets
* Fixed: [Bug #10895] global variables dialog. If multiple variables are created, they will be saved properly.
* Fixed: [Bug #10914] Code windows lost focus is Find command failed
* Fixed: Enable/Disable of couple of File menu items.
* Fixed: [Bug #10918] Virtual folder. Fixed couple of Virtual folder management issue.
* Now a virtual folder will also be removed if "Remove {folder}\* " is clicked.
* Exposed the following functions to Scripting system. Please read the wiki for details
- GetArrayFromString [Global function]
- GetStringFromArray [Global function]
- wxArrayString::Index
* Added & Exposed following SDK functions to Scripts:
- wxListBox::GetListboxSelections()
- wxListBox::GetListboxStringSelections()
* Modified additional wx lib entry pages. Now additional libraries can be selected from a listbox.
* Fixed: RunTargetWizard() will now add target to project files.
* Fixed: Wizard::GetCompilerID() will now return proper compiler id for targets.
* Added: wxWidgets project to Build target wizard
* Fixed: An empty virtual folder is created when "Categorize by file types" is unchecked.
Core Plugins:
------------
Code-Completion:
---------------
* Added setting of fillup characters (i.e. that cause the completion to be accepted) for code-completion (patch #1714). For example, by adding "(." as fillup characters, the completion will be accepted by pressing "(" or "." (Enter/Return always works).
Compiler:
--------
* Improved: Auto-detection of Intel C/C++ Compiler in Linux
============================================================
Contrib Plugins:
---------------
Byogames:
--------
* Updated byogames to new wxSmith
CodeSnippets:
------------
* Ability to save Snippets as external files
* Ability to edit externally saved Snippet file
* New Text vs File Link icons
* Ability to Rearrange tree with Drag and Drop
* Drag Snippet to Category
* Drag Category to Category
* Drag Snippet to Snippet creates new Category with old Snippet
* Drag Snippets/Categories outward and inward.
* Convert To Category context menu facility
* Added drag snippet item outward (MSW) w/ both text/file drag formats
* Dragging snippet File Link to CB opens the file.
* Changed text editor to Scintilla
* Added DragScrolling to Editor
* Allow Editor/Properties DragNDrop in both directions
* Expand first level Snippets on Startup
* Check for externally modified XML file
* Free resources & save index when Snippet window closes
* Portability
* User specified window placement
* User specified XML placement
* User specified external editor
* Save XML index file menu entry
* About info and context menu entry
* Snippet Properties Dialog
* Fixed: Missing event.Skip() in OnIdle() caused debugger to hang.
* Fixed: Avoid file changed dialog when .xml does not exist
* Removed Gentoo linux AMD64 ambiguity on finddlg wxComboBox call
* Add multi-edit session support
* Add DragnDrop of File Links to/from CodeBlocks (MSW)
* cascade subsequent edit windows, else they stack.
* changed some wxMessageBox(s) to messageBox
* If file already open in editor, just focus it. (use wxTreeItemId)
* messageBox(s) identify themselves as CodeSnippets msgs
* Prevent window size of 0,0
* Prevent multiple instances of CodeSnippets
* Add DragnDrop of File Links to/from CodeBlocks (GTK)
* Removed old editSnippetDlg class
* Enabled Properties edit cut/copy/paste/undo/redo/selectAll
* Fixed: can't force close/switch when menu item active
* Add Index File backup facility
* stahta01 changes 2007/4/21 for wxGTK2.8
* Add ".trash" option to delete external file (ask to delete file)
* Corrected messageBox placement for floating vs docked window (again)
* Fixed Termination/OnActivate crash
* Fixed bug on Linux, the executable folder wx being reported incorrectly
* Add dragscrolling options to settingsdlg() & snippetsconfig()
* snippetsconfig() globally manages all config items for all classes
* Fixes to allow docked window to restart at previous position
* More hacking to work around wxAUI docked/floating windows deficiencies
* Added settings preference for window type & mouse scrolling
* Corrections for linux settings preferences
* Corrected path for codesnippets; add wxLearner gtkx.h includes for *nix
* Fixes to OnUpdateUI routine when switching between window types
* Verfied wx2.8.3 fixed closing Docked window crash
* Added wxProcess::Exists() to check on external snippets window
* Fixed wx2.8.3 RightClick not selecting tree item
* Fixed external snippet storage folder not being recorded
* On startup, wait for user to open window with view/snippets menu
* Fixed CB fullscreen editor focus. Make editors modal while they have focus.
DragScroll:
-----------
* Removed wx2.6.3 work-arounds fixed by wx2.8.3
Koders query:
------------
* Updated cb_koders to new wxSmith
Share-Config:
------------
* Updated cb_share_config to new wxSmith (including minor gui enhancements)
* Moved cb_share_config project file to wxWidgets version 2.8
wxSmith:
-------
* Added EVT_CLOSE for wxFrame and wxDialog (this required fixing some bug in event-connecting code generation)
* Switched from wxFrame::CreateToolBar to new wxToolBar in code generated for wxToolBar
* Added MinSize / MaxSize properties for widgets and containers
* Moved wxsBaseProperties::BuildSetupWindowCode and wxsBaseProperties::SetupWindow to wxsItem
* Fixed bug found by SamT (
http://forums.codeblocks.org/index.php/topic,5667.msg43552.html#msg43552)
* Enabled creation of .lib file for wxSmith plugin (this is required by plugins which would like to add extra features for wxSmith like new widgets)
* Cleaned properties system (removed PropertiesFlags argument when registering properties which just messed up things)
* Added priority argument which will allow ordering properties in future
* Added macros for Enum / Flags property
* Added "UseNamesInXml" argument for wxsFlagsProperty
* Switched to check boxes in flags property instead of Yes/No combo (it's much easier to use)
* Fixed bug in flags property
* Added property for internal wxChart's styles
* Added support for content of wxChartCtrl item (charts can be added inside RAD now)
* Fixed event generation for root item
* Removed few warning on wx2.8
* Fixed destination dirs for wxsmith libraries
* Splitted into two dlls to prevent problems then loading plugin (only windows project for now)
* Removed more wx 2.8 warnings
* Added few missing headers
* Replaced few const wxString& with wxString (looks like it fixes problem with crash when wxSmith is unloading)
* Fixed crash when setting style for wxChoice
* Applied fix that may probably fix the crash on exit (previous didn't worked) - this one prevents using structure after it's been destroyed
wxSmithContribItems:
--------------------
* Added wxSmithContribItems plugin which adds extra items not included in base wxWidgets to wxSmith.
* Updated project to work with new wxSmith layout
* Added wxCustomButton from wxThings into wxSmithContribItems
============================================================
Regards,
Biplab