Code::Blocks Forums

Developer forums (C::B DEVELOPMENT STRICTLY!) => Development => Topic started by: seb_seb0 on April 30, 2009, 11:42:51 pm

Title: Positive Feedback from user + Bug + Suggestions
Post by: seb_seb0 on April 30, 2009, 11:42:51 pm
Hello,

first things first: congratulation for this great IDE !
I have put Code::Blocks in competition with others competitors, and I must say that it is the most useful for me.
I use it to program specific tools for my company - some of these tools are used by 100 colleagues, and some are used to perform critical tracking and reporting tasks. Therefore I can testify that your IDE is:
   - usable in a profit-oriented organisation
   - productive (no time waste during development / debugging phase)
    - performant (the result is up to the expectations)

After using it real-world situations, I can give you this feedback. It is up to you after to take it into account or not !

The positive feedback first:
   1 - the IDE scales good on medium-sized project (5-10 nested and/or dependant projects in the same workspace)
   2 - once the learning curve passed, it is very flexible and easy to use. I would however not recommend this IDE to a newbie (no harm intended here - we were all newbies...). It is however a pleasure for the experienced programmer, or the control-freak guy who wants to put his nose everywhere (such as me).
   3 - easy to install on different Windows versions (NT 2000, XP, Vista) by a simple directory copy (I have package my own set of tools and library in one single big archive...)
   4 - unbeatable ratio performance / price / battle against the machine for making it work the way I want...

Now, the Bug !

 In wxSmith (a very good plugin by the way), I have a recurrent crash when I save the resource (*wxs file). It happens for many Nightly Build, including the one from 13/04/2009. It happens more often on VISTA as on Windows 2000.
 More specifically:
   a - create a Dialog based wxWidgets from the wizard (multilib wx version 2.9, unicode)
   b - open the Dialog in wxSmith
   c - move a button
   d - click on save
   e - watch in despair Codeblocks agonizing (see screenshot)

 I have included 2 files CODEBLOCKS.RPT in my attachments. In the second zip archive, I have put also a small test project to reproduce the bug.

After using CodeBlocks for a few months, I can suggest the following improvements, in order of priority (from the most urgent to the one which can wait):

   1 - when running the .exe with the "RUN CTRL-F10" command, there are no checks performed on the age of the exe. If I modify the sources, and that I forget to rebuild the project, CodeBlocks will not warn me !
   2 - a small bitmap editor (plugin) would be a good idea - so it could be coupled with the contrib plugin wxSmithImage. I am thinking about something like MS Paint, not a Photoshop clone. I am looking for a convenient way to quickly create a set of bitmaps (xpm) for toolbars, icons,...
   3 - portability improvement:
      3a - there is still a CodeBlocks folder created in the AppData system folder (even with CbLauncher)
      3b - it is not everywhere possible to use relative paths in Codeblocks (or absolute path with macros expansion). Example: file extension handler ($(CodeBlocks) does not seem to work there !)
   4 - GDB support / watches: no lack of functionnality here - an interface cloned from the one from MSVC would be perfect (I realize though it is a matter of opinion) - I will try to be more specific in a next post
   5 - CDB does not break when the sources are located in a path containing spaces (somewhere on your desktop for instance)
   6 - Tools Plugin: it would be good if the user could add sub-menu in the "Tools" main menu
   7 - Help Menu: same here
   8 - A wizard allowing to target several compilers at once would be great (I often use 2 compilers on the same projects: MSVC 09 and MinGW GCC 4.3.3. The former generates smaller executables, but tend to be buggy - try to allocate a big (4 Mb) variable locally in a function). Using 2 compilers on the same project is useful to help produce better code quality
   9 - Hex Editor : the final functionnalities of the Hex Editor should be identical to HxD (www.mh-nexus.de). Block selection / insertion / deletion / search would be good. It is already good notheless.

If you made it that far, thank you for your attention.
I will try to help you by submitting Plugins in the future.
And again thank you for this great tool !

Seb


[attachment deleted by admin]
Title: Re: Positive Feedback from user + Bug + Suggestions
Post by: ollydbg on May 01, 2009, 03:11:14 am
   1 - when running the .exe with the "RUN CTRL-F10" command, there are no checks performed on the age of the exe. If I modify the sources, and that I forget to rebuild the project, CodeBlocks will not warn me !

I do second this feature which will check output file before build. :D

All the suggestions are very pragmatic.
Title: Re: Positive Feedback from user + Bug + Suggestions
Post by: Pecan on May 01, 2009, 02:27:29 pm
...
   3 - portability improvement:
      3a - there is still a CodeBlocks folder created in the AppData system folder (even with CbLauncher)
      ...

Should be fixed in next nightly.
Title: Re: Positive Feedback from user + Bug + Suggestions
Post by: Jenna on May 01, 2009, 02:42:09 pm
   1 - when running the .exe with the "RUN CTRL-F10" command, there are no checks performed on the age of the exe. If I modify the sources, and that I forget to rebuild the project, CodeBlocks will not warn me !

That's the expected behaviour for me.

You should try "Build and run F9". It checks if your target is uptodate, builds it if required and runs the executable.
Title: Re: Positive Feedback from user + Bug + Suggestions
Post by: MortenMacFly on May 01, 2009, 03:27:36 pm
Some notes from me, too:

Now, the Bug !
Sorry to say that, but I can't reproduce (on Windows, several computers with different configs). :-(
Hence quite a few seems to have it's origin int he BrowseTracker plugin. If you are using the wxaui branch, please try disabling this plugin.

   2 - a small bitmap editor (plugin) would be a good idea - so it could be coupled with the contrib plugin wxSmithImage. I am thinking about something like MS Paint, not a Photoshop clone. I am looking for a convenient way to quickly create a set of bitmaps (xpm) for toolbars, icons,...
   9 - Hex Editor : the final functionnalities of the Hex Editor should be identical to HxD (www.mh-nexus.de). Block selection / insertion / deletion / search would be good. It is already good notheless.
Those two:
As I always say: Sure we can pump a lot functionality into plugins. But an image editor? I believe you can handle this just fine as a tool which you setup. Using the macros provided you can run the external image editor (I use Paint.NET for this) and providing it directly with the image/path you need. If we/you need some more macros for specific purposes that's the way to go IMHO.
The same applies basically for the hex editor, too - hence Byo did a great job with this so it's there.

The major drawback: We need to maintain such things somehow, too. If we open more and more end-points we won't be able to do so. And of course users will request more and more features so sooner or later it won't stay a "simple image editor". If you rely on a powerful 3rd party tool instead you get all you need in the beginning. If you need help with integrating this into C::B (I am not talking about a plugin here) we can help.
Title: Re: Positive Feedback from user + Bug + Suggestions
Post by: seb_seb0 on May 27, 2009, 10:12:02 pm
Hello,

thank you for the feedback.

For the bug, I was also not able to reproduce it on a consistent manner.
I have cleaned my installation of CodeBlocks, installed the latest nightly - now it works better (duh).
I will let you know if it happens again (it did in the past on clean install - with a complex wxDialog containing several sizers one inside another).

For the additionnal functionnalities, I understand your concern about the maintenance - it  sures takes times.

I will try to contribute in the future - right now the work is very demanding, and I have little time (my family deserves my time as well).

On a side note, I tried to build the SVN trunk of codeblocks. Building went fine, but the resulting executable proved really unstable (saving a wxDialog crashes codeblocks).
It is possible that it comes from wxWidgets lib (but I use the MSW port of version 2.8.10 built in monolithic shared mode, and without tweaking at all setup.h and config.gcc. Build command: mingw32-make.exe -f makefile.gcc BUILD=release UNICODE=1 SHARED=1 MONOLITHIC=1). I am able to run all the wx samples without problems though.
Is it also possible that it comes from my compiler ? I am using the GCC TDM package (gcc 4.4.0)
I will investigate further - any pointers are welcome !

Seb