Code::Blocks July Month Update Summary

After another month long development of Code::Blocks (C::B) by the C::B Dev Team (including me), we made the following modification / improvements. Apart from adding couple of newer features we’ve fixed a number of annoying bugs, improved the stability and usability of it.

The following changelog is based on SVN Commit History of July 2007. Please note that this is not a Release Announcement and the changelog contains the commit made by entire C::B Dev Team in July 2007.

BTW, C::B has not won the SourceForge.net 2007 Community Choice Award as a Best Tool or Utility for Developers. I would like to thank you all on behalf of C::B team for supporting & voting us and putting us in the final list.

Summary

  • Added support for additional resource files to be added in resource package. This means now plugins can freely install extra icons and other resource files to the share folder of C::B.
  • Added support for version detection of compilers during runtime. This is currently used for GCC (MinGW) compiler. This adds the possibility to detect a compiler version and appropriately turn off incompatible/deprecated compiler options between versions.
  • Code-completion got a number of updates. It’s parser received some long-demanded updates and fixes.
  • Added support for Tooltips of variable, objects in the editor.
  • Project import code has been moved from SDK to a new plugin “Projects Importer”.
  • Added support for Remote Debugging.

Detailed changelog is as follows. Continue reading

Code::Blocks June Month Update Summary

We made a lot of improvements in Code::Blocks last month. As usual the list contains a large number of bug-fixes, new additions / improvements made to Code::Blocks.

Summary:

  • Scripted wizards’ layout problem has been fixed. This bug was affecting Linux users with wx-2.8.x runtime.
  • A large number of compilation warnings were fixed. Now C::B would compile with wx-2.6.x or wx-2.8.x without annoying warnings. These warnings were popping up due to the code changes in wxWidgets 2.8.x.
  • Fixed major memory leak.
  • Code-completion got a lot of improvements.
  • Code of Internationalization of C::B has been changed. Please visit the forum for more details.
  • wxSmith got some huge update.

Detailed changelog is as follows: Continue reading

Code::Blocks May Month Update

Here is the changes made to Code::Blocks during May month.

Most of our time last month were dedicated for bug-fixing. In fact, whole May month was, virtually, declared as bug-fix month.

As reiterated earlier, this is Not an Official Release Announcement. The following list is based on the commit history.

Notable fixes/improvements:
————————–
* A lot of Compiler warnings were fixed which pop-ed up after switching nightlies to wxWidgets-2.8.x
* Notebooks were restored in Compiler and Project Options dialogs.
* Editor settings dialog will not fill the entire screen.
* Static lib target name generation has been updated.
* Open project link in Start page will now behave correctly.
* Added support for Turbo C++ Explorer’s compiler, WinAVR compiler.
* AStyle plugin has been updated with AStyle 1.20.2.
* A lot of fixes were applied in CodeSnippets plugin.
* wxGrid has been added to wxSmith plugin and a number of bugs were fixed in wxSmith.

Detailed change log is as follows. Continue reading

Code::Blocks and wxWidgets 2.8.4

wxWidgets (wx) 2.8.4 has been released recently. Since Code::Blocks was switched to wx 2.8.x series wx-2.8.3 runtime dll was being used on Windows. But wx 2.8.3 had some serious issues which were crippling some of the features of Code::Blocks on Windows and as well as on Linux. Well let me explain them.

On Windows, the pop-up menu were not responding to clicks. This became an annoying issue for Code::Blocks as a major portion of pop-up menus were not working. This bug existed in wx-2.8.3 and has been fixed in wx-2.8.4.

So if you are facing such issue where the Pop-Up menus are not working, just upgrade to wx-2.8.4. A link to a new DLL is now available with the Nightly Build links. Please check the Code::Blocks forum for the link.

On Linux the issue was quite serious, though. There is a bug in wx-2.8.3 in which an application may run into an endless loop if a statictext control is added to menu. This issue was making Code::Blocks to hang-at-start-up. So if your Code::Blocks installation is showing such weird behaviour, it’s time to upgrade.

For Linux, you need to upgrade on your own. As such no wxGTK runtime will be provided by Code::Blocks team (including me). You may build it on your own or can check wxWidgets website’s Download section.

So if you face any of these two issues, please don’t file a bug-report. Rather update wxWidgets runtime.

Signing off today. :)

wxWidgets Wizard Update: Apr 2007

Hello all,

The wxWidgets Wizard of Code::Blocks have been updatd recently. In this article I’ll explain the changes that I’ve committed.

Earlier wizard had two pages to add additional libraries in Non-Monolithic build of wxWidgets in Windows. Now those two pages have been changed to a more user-friendly one page list. All the libraries are now available as a single list and selecting them is also easier. Please see the following screenshot for more details.

wxaddllibpage.png

Another important update has been committed in the wizard. Wizard is now able to add additional dependencies if you’ve forgot to add them in your project. This would be helpful in resolving linking errors due to missing dependencies.

In past couple of months, several users requested to add support for a wxWidgets target addition. In this update I’ve added that, too. Now you’ll be able to add a target to an existing project even with a different compiler and configuration.

To use this, please click File > New > Build target menu. Now you’ll see the following screen.

wxintarget.png

Select wxWidgets from the list and the target wizard will start. Now follow the steps in the wizard and use appropriate settings. The wizard will create a New target for you.

Please note that to add a new target, a project should be open in Code::Blocks.

Hopefully you’ll find this new addition to be useful.

Regards,

Biplab

wxWidgets 2.6.4: New Release with New Issues

Hi All,

Posting after a long time. Got busy with studies and coding.

Last month wxWidgets-2.6.4 was released. This is primarily a bug-fix release. Though newer releases are already available, a number of projects are still using wxWidgets 2.6.x for their projects. Code::Blocks is one such example.

Since it’s release I’ve been compiling Code::Blocks with it to find out any issues. The first issue that I noticed was incorrect File-type icons in Code::Blocks. All the icons that C::B associates with different file types were getting mangled after I compiled it with wxWidgets-2.6.4.

Finally the bug has been found out and the fix is pretty easy. Just apply the following patch to wx.rc file.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
--- C:/wxWidgets-2.6.4/include/wx/msw/wx.rc	Mon Mar 26 18:15:59 2007
 
+++ C:/wxWidgets-2.6.4/include/wx/msw/wx.rc	Mon Mar 26 18:17:13 2007
 
@@ -79,7 +79,7 @@// Low alphabetically to make it the default, but not so low as to
 
// affect applications that use 'a'
 
-bICON                           ICON "wx/msw/std.ico"
 
+//bICON                           ICON "wx/msw/std.ico"
 
//////////////////////////////////////////////////////////////////////////////
 
//

With this new wx code, an additional Icon was getting inserted into the exe file which was screwing up the associated icons.

Is it reported to wx-dev team? Answer is No and not necessary. This bug has been fixed in wx 2.8.x code. But unfortunately, the buggy code came with wxWidgets 2.6.4.

So if you want to compile Code::Blocks or any other app with wxWidgets 2.6.4, then please pay attention to this bug. Or otherwise it may haunt you for no reasons.

Another bug that has been noticed in Code::Blocks after switching to wx 2.6.4 is that it’s Find and Replace dialogs are now not responding to Escape key!

This bug is new and still not confirmed whether it’s an issue with wxWidgets 2.6.4 or Code::Blocks code. As far as I’m concerned, I’m quite sure that C::B code is not responsible for this.

I’m presently working on this to see if this can be fixed or not.

Hope this unofficial bug report and it’s fix will help you. :)

How to Install Code::Blocks Nightly on Windows?

Hi Everybody,

In this article I’ll discuss on how to install Code::Blocks Nightly on Windows. Most of the Code::Blocks (C::B) users start downloading Code::Blocks RC2, which was the last stable release. But RC2 is very old, around one and half years old. A lot of changes were made to the core and that is one of the reasons of not releasing another stable release within this period.

First download a latest nightly from the following forum. Go to that forum and you’ll find a number of posts. Read the most recent release announcement.

http://forums.codeblocks.org/index.php/board,20.0.html

Code::Blocks nightly release file name will be in the following format. Generally you’ll find a file named CB_YYYYMMDD_revXXXX_win32.7z, where ‘X’ denotes revision number. Download this file.

Now extract the contents of this file to a folder. Please remember the following two points.

  1. Do not overwrite the contents of an existing Nightly or an older RC2 release installation directory contents. This may land you into troubles. There are major differences between RC2 core and latest Nightly core and they are incompatible with each other. If you overwrite an existing nightly,C::B may refuse to run if there is any changes made to the core and some plugins may fail.
  2. Before installing any C::B nightly, please remove older RC2 installation. Because the older RC2 created configuration files will conflict with newer ones.

Now Code::Blocks needs another two files to run. Both the files are also posted with each nightly releases. One file is wxWidgets runtime dll and the second one is MinGW runtime dll file. Download them and extract to the folder where codeblocks.exe file resides. These runtime files can be downloaded from the following link.

Your Code::Blocks nightly is now installed!!

If you still have any questions, please feel free to ask me. :)

Switch to a Newer & Better Code::Blocks

Hello Everybody,

A post after a long gap. Actually got bit busy with studies and bug-fixing. After fixing a number of bugs Code::Blocks (by the whole team) I finally decided to write this about the newer features that we’ve added.

So the first question that may come to your mind is why I’m saying switch to “Newer & Better” Code::Blocks??

Most of the users start downloading the Code::Blocks RC2 which is about 1.5 yrs old. But it has undergone a large number of changes in core and that is one of the reasons it’s now offered as Nightly Releases.

The latest change is actually a Performance Boost. Earlier there were a large number of complaints that Code::Blocks is a resource hog in some machines. It was a long pending issue. Finally we’ve fixed this issue in Revision 3676. :)

Now newer Code::Blocks actually consumes at least 6-8 times less CPU power!! Can’t believe it? Try a newer Nightly and you’ll come to know. So your favourite IDE has just got better.

So it’s my humble request to everyone who is using Code::Blocks Nightly of Revision lesser than 3676 to upgrade to a newer Nightly immediately. Download link are available in Blogroll section of this blog on the right side of this page.

Any more updates? Yes, there are many. We’ve fixed a bunch of bugs. We’re currently doing some modifications to it’s core, wxSmith has got better and more. At the time of writing revision 3718 is out. Please try it out. :)

wxWidgets, OpenWatcom and Code::Blocks

Hello Everybody,

This week I’m posting wxWidgets Wizard update alongwith a number of other feature improvements that has been added in Code::Blocks.

A number of users had complained about the support of OpenWatcom in Code::Blocks. The support was there but it was broken as it was written quite a while ago. Thus I rewrote some of the parts to improve the support. Now it has been tested with OpenWatcom 1.6 and found to be working perfectly with different types of projects.

After improving OpenWatcom support the goal was set to make the wxWidgets Wizard compatible with OpenWatcom. It has been updated to work with latest OpenWatcom release. I’ve personally tested it with OpenWatcom 1.6 and found to be working perfectly. OpenWatcom support for wxWidgets Wizard has been added in Revision 3660.

Till date if anyone wishes to develop wxWidgets based application with OpenWatcom makefile was the only option. Latest Nightlies of Code::Blocks have changed the equation. The OpenWatcom support is also available in 3rd-Party GUI builder integration part of wxWidgets Wizard.

One feature is presently lacking in OpenWatcom support in wizard. It does not support PCH files. But soon this limitation will be resolved.

Another interesting feature addition to wizard is support for wxSmith, the default GUI builder in Code::Blocks. I’m thankful to Byo for his support making the integration possible.

I hope you’ll all find the latest changes more interesting and useful.

Thanks for visiting the Blog. Please visit again for more updates. :)

wxWidgets Wizard Update: 27th Feb 07

An interesting feature has been added in the wxWidgets Project Wizard of Code::Blocks. Support for external GUI builder. Presently wxFormBuilder is supported. Code::Blocks also comes with an integrated GUI builder named wxSmith. Next release of this wizard will be focusing on integrating wxSmith.

So what more user need to do to enable this feature? Truly speaking, not much. User have to select an option which asks which GUI builder to use (See the following screenshot for more details). There is another option to generate either wxDialog based or wxFrame based app.

wxwiz_gui_sel_page.png

Screenshot showing GUI builder selection page

Selecting No GUI Builder will create an working project with sample code.

Changelog:

  • Wizard now supports creation of wxDialog / wxFrame based app.
  • Wizard now supports wxFormBuilder to be selected as 3rd-Party GUI Builder alongwith wxDialog / wxFrame option.
  • PCH include header has been reverted to wx_pch.h and PCH Pre-Processor definition is changed to WX_PRECOMP
  • EVT_CLOSE has been added in all templates to ensure proper exit.

The new wizard will be available from Revision 3645 onwards and it has been released with 26th February 2007 Nightly Release. Download it from -

http://forums.codeblocks.org/index.php/topic,5289.0.html
:)