Developer forums (C::B DEVELOPMENT STRICTLY!) > Development

toolbar bottom edge is not shown corectly under C::B build with wx git master

<< < (3/7) > >>

ollydbg:

--- Quote from: ollydbg on February 14, 2016, 06:57:41 am ---The workaround is that we can explicitly reduce the toolbar size if it contains a wxChoice.
From my point of view, I think the old way is quite compact( so I like the compact toolbar :) ), and save a lot of spaces for other windows(such as the notebook window)

Or, wx's source code need to be changed, I see it is introduced by this commit:

--- Code: ---Revision: 0185d61a2c6f91cf47932fce0d68d70b7e578b17
Author: JulianSmart <julian@anthemion.co.uk>
Date: 2015-11-25 5:28:09
Message:
Ensure toolbar fits controls that are taller than the buttons in wxMSW toolbar


----
Modified: src/msw/toolbar.cpp



--- End code ---

--- End quote ---

I just revert the above commit, and build wx library again, and I see the issue is gone!
(NOTE: please reset the layout files by click the menu->View->perspectives->Delete current, other wise, the wrong size is still used even you update the wx dll)

ollydbg:
This is a screen shot of my own build C::B under Win7-64bit. I'm still using a 32 bit GCC, and C::B is build against wx 3.1 release.

So, we still see the wrong toolbar which has extra spaces in the bottom edge.

cacb:
I attach 2 screen shots. One of an older C::B on Windows built from wx2.8 and another new one on Linux/Kubuntu built from wx3.0.2
Notice the huge difference in toolbar size and size occupied by icons and especially wxChoice items. This is possibly the same issue as reported this thread. Notice that in the case of the Kubuntu version I edited the code completion XRC before building C::B to make it half the default size. It is still very large.


The windows version is one of the precompiled Nightly Builds I downloaded
svn build rev 10595 (2015-11-18 01:53:38) gcc 4.9.2 Windows/unicode - 32 bit
The Help about says Build: Nov 9 2015, 21:39:40 - wx2.8.12 (Windows, unicode) - 32 bit

The Kubuntu version is built from sourcee on Kubuntu 16.10 64bit using
https://apt.jenslody.de/stable/pool/main/codeblocks_16.01svn11019.orig.tar.gz
The Help about says Build: Feb 20 2016, 08:05:41 - wx3.0.2 (Linux, unicode) - 64 bit
I guess the year above should really be 2017, but it says 2016
Also note I really compiled it Mar 10, 2017 from that tar file



oBFusCATed:
What gtk are you using?
My toolbars look perfectly fine and slim with both wxgtk2.8 and wxgtk3.0.
Comparing wxmsw and wxgtk build is not a good idea - they use totally different rendering engines underneath.

cacb:

--- Quote from: oBFusCATed on March 12, 2017, 01:30:00 pm ---What gtk are you using?

--- End quote ---

I don't select that anywhere explicitly. I am building against the official wxWidgets in the Kubuntu repository, not a self-built one.  However, it looks like it is gtk2 from the list below?

ldd /usr/bin/codeblocks
        linux-vdso.so.1 =>  (0x00007ffd081aa000)
        libcodeblocks.so.0 => /usr/lib/libcodeblocks.so.0 (0x00007f6c491d7000)
        libwx_gtk2u_aui-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_aui-3.0.so.0 (0x00007f6c48f3e000)
        libwx_gtk2u_propgrid-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_propgrid-3.0.so.0 (0x00007f6c48c56000)
        libwx_gtk2u_xrc-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_xrc-3.0.so.0 (0x00007f6c488e5000)
        libwx_gtk2u_html-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_html-3.0.so.0 (0x00007f6c48607000)
        libwx_gtk2u_qa-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_qa-3.0.so.0 (0x00007f6c483d7000)
        libwx_gtk2u_adv-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_adv-3.0.so.0 (0x00007f6c47ff1000)
        libwx_gtk2u_core-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-3.0.so.0 (0x00007f6c47778000)
        libwx_baseu_net-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_baseu_net-3.0.so.0 (0x00007f6c4752c000)
        libwx_baseu-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0 (0x00007f6c4709a000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f6c46e7a000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f6c46af2000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6c467e9000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f6c465d2000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6c4620b000)
        libwx_baseu_xml-3.0.so.0 => /usr/lib/x86_64-linux-gnu/libwx_baseu_xml-3.0.so.0 (0x00007f6c45ffb000)
        libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f6c45ce5000)
        libgtk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 (0x00007f6c45699000)
        libgdk-x11-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 (0x00007f6c453e4000)
        libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f6c45191000)
        libgdk_pixbuf-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007f6c44f6f000)
        libpango-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007f6c44d21000)
        libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f6c449e8000)
        libnotify.so.4 => /usr/lib/x86_64-linux-gnu/libnotify.so.4 (0x00007f6c447e0000)
        libpangocairo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007f6c445d3000)
        libcairo.so.2 => /usr/lib/x86_64-linux-gnu/libcairo.so.2 (0x00007f6c442c0000)
        libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f6c440ba000)
        libSM.so.6 => /usr/lib/x86_64-linux-gnu/libSM.so.6 (0x00007f6c43eb0000)
        libpng16.so.16 => /usr/lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f6c43c7e000)
        libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007f6c43a14000)
        libtiff.so.5 => /usr/lib/x86_64-linux-gnu/libtiff.so.5 (0x00007f6c437a1000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f6c43587000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6c43383000)
        /lib64/ld-linux-x86-64.so.2 (0x000055c5c2829000)
        libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f6c43157000)
        libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f6c42ee4000)
        libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007f6c42ce0000)                                                                                                                             
        libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f6c42ada000)                                                                                                                                       
        libatk-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007f6c428b5000)                                                                                                                                     
        libgio-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007f6c42520000)                                                                                                                                     
        libpangoft2-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007f6c42308000)                                                                                                                           
        libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f6c420c5000)                                                                                                                               
        libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f6c41ebb000)                                                                                                                                     
        libXinerama.so.1 => /usr/lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007f6c41cb8000)                                                                                                                                   
        libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007f6c41aa8000)                                                                                                                                               
        libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f6c4189d000)                                                                                                                                       
        libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f6c41691000)                                                                                                                                     
        libXcomposite.so.1 => /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007f6c4148e000)                                                                                                                               
        libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f6c4128b000)                                                                                                                                     
        libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f6c41079000)                                                                                                                                           
        libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007f6c40e71000)                                                                                                                                             
        libthai.so.0 => /usr/lib/x86_64-linux-gnu/libthai.so.0 (0x00007f6c40c68000)                                                                                                                                           
        libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f6c40a44000)                                                                                                                                             
        libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f6c40797000)                                                                                                                                   
        libpixman-1.so.0 => /usr/lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007f6c404ef000)                                                                                                                                   
        libxcb-shm.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007f6c402eb000)                                                                                                                                     
        libxcb-render.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007f6c400e1000)                                                                                                                               
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f6c3fed9000)                                                                                                                                                   
        libICE.so.6 => /usr/lib/x86_64-linux-gnu/libICE.so.6 (0x00007f6c3fcbd000)                                                                                                                                             
        libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f6c3fab8000)                                                                                                                                               
        liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f6c3f895000)                                                                                                                                               
        libjbig.so.0 => /usr/lib/x86_64-linux-gnu/libjbig.so.0 (0x00007f6c3f687000)                                                                                                                                           
        libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f6c3f461000)                                                                                                                                         
        libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f6c3f244000)                                                                                                                                           
        libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007f6c3effc000)                                                                                                                                             
        libharfbuzz.so.0 => /usr/lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007f6c3ed7c000)
        libdatrie.so.1 => /usr/lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007f6c3eb74000)
        libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f6c3e970000)
        libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f6c3e768000)
        libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007f6c3e526000)
        libgraphite2.so.3 => /usr/lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007f6c3e301000)



--- Quote from: oBFusCATed on March 12, 2017, 01:30:00 pm ---My toolbars look perfectly fine and slim with both wxgtk2.8 and wxgtk3.0.
Comparing wxmsw and wxgtk build is not a good idea - they use totally different rendering engines underneath.

--- End quote ---

I agree they use different engines underneath, and I don't expect them to be identical. What I expect is that both are reasonably similar, and currently the toolbars as shown in my Kubuntu 16.10 build are not quite what I would expect (hence the comparison). I used to build C::B exactly the same way under Kubuntu 15.10 and before (implying wx2.8.12) and the toolbars were more compact and reasonable then.

For the record, all I do when building from the *.tar.gz is

1. Fix debian/rules to use add --with-wx-config=/usr/bin/wx-config  to DEB_CONFIGURE_EXTRA_FLAGS
2. sudo dpkg-buildpackage

That's it.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version