Menu

#1397 Code::Blocks must work right out of the box And GUI builder must be improved

Undefined
open
nobody
GUI (6) setup (2)
Undefined
2023-07-04
2023-06-06
No

I think that Code::Blocks is too complex to set up and start working with. §Ever more if the user wants make use of wxWidgets library.
I hope for a release that has all tools integrated and works right after the box because all configuration is already done during installation.
Having Code::Blocks as it is now people get discuraged because needs too much time to see the first thing running and people get frustrated very fast. I needed to make it work ()partially almost two days: not good!
The setup procedure must do everything alone and if there is something that needs to be done must be suggested at the first run as wizard than everything must work or people go away and look for other solutions.
Also I think the integrated GUI builder is really ugly: icons don't say much of what they do. You should take example from SharpDevelop instead, much more comprehensible because it has labeled each control and disposes them vertically. Also a search function for them would be welcome.

Discussion

  • wonka willas

    wonka willas - 2023-06-06

    Also the compiler must work right out of the box for both console and GUI applications: the user doesn't have time to waste to set options that doesn't even know about that exist.
    The first set up must give the user the possiblity to work immediactly with no proble. Than when it starts getting familiar with CB than can go inside customization option and more. But at glance CB must work imidiactely. This i s how you capture the user not wasting its time for configurations that doesn't even understand yet.
    Same thing for wxwidget I lost another day to make it work and I am not sure if it is really working as it has to be. because I have no experience. so something must say to me: "Now wxwidget is installed and you can find it here to use its power" or something like that. Without it I don't even know what to look for As a newbie.

    With the hope this helps to built a more ergonomic and user friendly solution that make people get close to it and not run away from it.

     
  • wonka willas

    wonka willas - 2023-06-18

    Also it has some contradiction in properties, for example:
    1. wxTextCtrl, wxGrid (and more) have the property Hidden
    1. the wxPanel has Hidden and AUIvisible : of which the last one makes the panel not visible, while the first one I don't even what it does because it seems doesn't do nothing: the panel continues to stay visible with Hidden property checked,
    Sizers don't even have none, which is unfortunate.

    Behavior coherence is needed in IDE even when it uses external components as wxWidgets: confusion is never a good thing to deal with.

     
  • wonka willas

    wonka willas - 2023-06-18

    Another thing I've noticed is the impossibility to drag and drop items using the tree view into the panel:
    Management > Resources which is much unfortunate IMHO the tree view here must be drag and drop capable to allow us easily moving things around.

     
  • wonka willas

    wonka willas - 2023-06-18

    I forgot to say that I use C::B 20.03 unicode - on win 7 32 bit - .

    I'am also trying to compile to unicode correctly but I can't make it work: unicode symbols I use for es. in buttons and labels still are shown incorrectly as if they are not recognized correctly after compilation even when I set correctly the Font that supports the chars I need to show, and I pick them up from the OS char map and even if I set to use unicode in settings and even if I set to use unicode as file encoding... nothing I did seems to work to show correctly the chars after compiling.
    By the way in GUI edit mode and in Preview mode the form / frame / dialog is shown correctly but after compiling the project all chars I use as symbols are shown differently for Instance in preview the following chars ● ◄ are shown as expected but after compiling and running the exe file the chars are shown as into the attached screenshot.
    Also IMHO Unicode should be the default encoding for everything and should be easier to change or revert to older encoding: just one option should be changed to set it or not for the whole project. For example it should be chosen into the project creation wizard or even better into the the project settings, but just once for the whole project will change for everything that is part of it.

     

    Last edit: wonka willas 2023-07-04
  • wonka willas

    wonka willas - 2023-06-18

    I have created the project using wxwidget 3221 library and when compiled it is just 1.8 MB on disk but to make it work I must put into the same dir the library wxmsw32ud_gcc_custom.dll to make it work that is 318 MB!! This is areal huge inconvenient. Hope will be possible to find a solution in future releases of C::B because if, for example, I want to make a free plugin for Notepad++ I don't want to deploy it with attached a library that is so huge: it is a non sense.
    Please make sure to solve those problems in future versions of C::B.
    Thank you.

     
    • ollydbg

      ollydbg - 2023-07-03

      I have created the project using wxwidget 3221 library and when compiled it is just 1.8 MB on disk but to make it work I must put into the same dir the library wxmsw32ud_gcc_custom.dll to make it work that is 318 MB!! This is areal huge inconvenient. Hope will be possible to find a solution in future releases of C::B because if, for example, I want to make a free plugin for Notepad++ I don't want to deploy it with attached a library that is so huge: it is a non sense.
      Please make sure to solve those problems in future versions of C::B.
      Thank you.

      First, thanks for all your comments about Code::Blocks.
      wxmsw32ud_gcc_custom.dll this file is too large from my point, but this is expected, because you have ud in the file name, the u means unicode, the d means debug. Since it is debug enabled, it is large. If you wan to a smaller size of dll, you should build release version.

       
  • wonka willas

    wonka willas - 2023-06-18

    Would be also great to have the possibility to select multiple objects / controls to set on them all at once similar properties instead of doing it one by one. For example if we want to set the border or the color or anything else of 100 controls of a form dialog or frame, we have to do it one by one which is really tedious and time wasting.
    So I hope that in future this issue will be solved to allow us to select an unlimited number of controls and set common properties all at once. The only things that do not have to be modified all at once would be id and var names of the controls because they need to be unique. So when selected multiple object and we modify such properties must be allowed but at the same time a progressive number must be added automatically to what the user types to differentiate one object from the other.
    Thank you

     

    Last edit: wonka willas 2023-07-03
  • wonka willas

    wonka willas - 2023-06-18

    Into the Properties panel should be good to allow to change the value by clicking on the label. For example clicking on a checkbox label the checkbox changes its status from checked to unchecked and viceversa. At the moment instead only clicking the checkbox it self it works, which is not a standard behavior.

     
  • wonka willas

    wonka willas - 2023-06-18

    It should be also good to have the possibility to indicate the size and position etc. of GUI elements not only in px but also in %

     
  • wonka willas

    wonka willas - 2023-06-18

    When coping and pasting a GUI element some properties get lost during the copy-past process and the pasted GUI component is pasted with default values instead of those already set on the original copied. Sometime we create an element and we set carefully its properties and we use it as model/template to make others by coping and pasting but if its settings get lost during the process we have to start from scratches everitime. Should be good instead that GUI components copied and pasted kept the properties of the original so that it can be used as template and make the GUI creation much less time consuming.
    Of course ID and var name associated with the GUI component cannot be identical: so a progressive number should be added during the copy-paste process.

    Also should be good to have a Ctrl+d keyboard shortcut to create duplicates of GUI components to speed up the process of GUI design.

     

    Last edit: wonka willas 2023-06-18
  • wonka willas

    wonka willas - 2023-06-23

    The Undo Redo buttons should show a drop-down with the descriptions of the operations to undo redo as it is in MS Word. It also should allow to undo | redo multiple operations at once selecting them from the drop down

     
  • wonka willas

    wonka willas - 2023-06-28

    Into an AuiToolBar, buttons with icons don't get rendered correctly but they appear just grey and empty when editing the GUI.
    They appear correctly rendered in preview mode or after compiling. Other icons into the GUI are correctly showed in all 3 modes instead.
    Have a look at the following screenshots:

     
  • wonka willas

    wonka willas - 2023-07-03

    The status bar is not shown in preview mode or in edit mode but only after compiling the project. -Both the preview mode and the edit mode should include the rendering of the frame status bar .

     

    Last edit: wonka willas 2023-07-03
  • wonka willas

    wonka willas - 2023-07-03

    The status bar doesn't accept any children but it accepts only fields, that do not accept else than text. For instance if I want to add a wxGauge or a drop down menu as for instans to zoom the app content, or other components, I can't. But it should be better to be possible because the status bar is frequently used to put such feedback tool that is a proper status tool and the status bar is an optimal zone where to place it.
    It is not even possible to set default labels for fields by using the status bar property panel and not even to set events to interact with the status bar elements/fields.
    These lack of possibilities limits very much the customization features of a frame status bar.

     

    Last edit: wonka willas 2023-07-03
  • ollydbg

    ollydbg - 2023-07-03

    I forgot to say that I use C::B 20.03 unicode - on win 7 32 bit - .

    From my point of view, I think you should to run a nightly build version of C::B. 20.03 is an quite old release. I guess some of the bugs were already fixed in the nightly build version.

    But you are still using 32bit Windows? My guess is that 32bit version of C::B is not supplied by our devs. You can see this forum links: Nightly builds

     
  • wonka willas

    wonka willas - 2023-07-03

    I have created a test GUI within C::B using a wxFrame. In it I inserted some components as:
    wxSplitterWindows
    wxAuiManagers
    wxPanels
    plus more other controls....

    I am getting a strange behavior:
    In Design/Edit mode and Preview mode the AUI Caption text's color is black and can be seen clearly against the gray AUI Caption background color.
    After building/compiling the wxFrame as *.exe the AUI Caption text becomes white and is difficult to see the AUI Caption Text and distinguish it from Caption background color that is grey.
    It would be better IMHO to make it coherent to be compiled to be displayed as it is in Design/Edit and Preview modes. Also would be great to have some options to customize the text color and the background color of wxPanels AUI Caption, that at the moment is not present into the C::B Property panel in Design/Edit mode.

    Follows a screenshot that spots the issue and shows and compares it into the different Design/Edit mode, Preview mode and Compiled mode:

     

    Last edit: wonka willas 2023-07-03
  • wonka willas

    wonka willas - 2023-07-04

    I have installed and compiled wxWidgets-3.2.2.1 but C::B New project wizard, doesn't recognize it automatically nor allows the user to select the library to list it into the wizard itself: in fact the wizard doesn't even have a button to select and add the new wxWidgets-3.2.2.1 library, but it lists the older ones only.

    IMHO the wizard should provide an Add New... button, to allow to add new libraries, as wxWidgets-3.2.2.1 or else, to the wizard list itself to be used by C::B.

    Follows a screenshot to show the issue:

     

    Last edit: wonka willas 2023-07-04
    • ollydbg

      ollydbg - 2023-07-04

      Oh, can you try the nightly build version of C::B. The wxWidgets project wizard already has wx 3.2 and wx 3.3 library support for several years. From the screen shot, I think you are using an old version of C::B.

      Also, I think you can post questions in the C::B forum, and I see you have put so many question/issues in the same ticket, it may be hard to manage them.

      Thanks.

       

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.