Author Topic: Problem with icons on HiDPI displays  (Read 4359 times)

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Problem with icons on HiDPI displays
« on: June 10, 2018, 01:03:58 pm »
Icons in C::B are too small on HiDPI displays. I am experiencing it myself and others do too (e.g. http://forums.codeblocks.org/index.php/topic,21724.msg147764.html#msg147764 )
 
Are there any changes on this matter? Do somebody has already started to implement required changes?

If not, I could put some of my efforts for solving this problem.

Maybe somebody could advise what steps should be taken?
I was thinking about (a) the making icons with different sizes and (2) implementing in C::B the possibility to choose these icon sets.
« Last Edit: June 10, 2018, 01:59:44 pm by darmar »

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #1 on: June 10, 2018, 07:45:12 pm »
As a start we need bigger icons.
I'm agitating a person to do the work, but the progress is really slow there.
I've not looked what we need to do after we have the bigger icons.
I'm running at 160dpi and 22x22 icons aren't too small. :)
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #2 on: June 11, 2018, 08:35:21 am »
Quote
As a start we need bigger icons.

Which icons are needed? How big they should be? Maybe I will be more successful in agitating somebody  ;).

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #3 on: June 11, 2018, 08:51:45 am »
All of them. :) I think to be safe we need sizes as big as 64x64 or even 128x128 for toolbar icons.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline headkase

  • Almost regular
  • **
  • Posts: 159
Re: Problem with icons on HiDPI displays
« Reply #4 on: June 11, 2018, 02:45:08 pm »
All of them. :) I think to be safe we need sizes as big as 64x64 or even 128x128 for toolbar icons.

With the caveat that I'm a noob, if it has to be done then how about doing it once: create scalable vector graphic files, SVGs, for the icons.  Then those definitions can, even on the fly, be used to create whatever size to your heart's content?

https://en.wikipedia.org/wiki/Scalable_Vector_Graphics
« Last Edit: June 11, 2018, 02:46:58 pm by headkase »

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #5 on: June 11, 2018, 04:54:01 pm »
SVGs aren't 100% suitable for the task, because the anti-aliasing algorithms have troubles producing sharp images for the smallest sizes.
So, even if SVG is used as a base for the icons, a manual pass is still required in order to make the icons look really good.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #6 on: June 11, 2018, 11:57:16 pm »
SVGs aren't 100% suitable for the task, because the anti-aliasing algorithms have troubles producing sharp images for the smallest sizes.
So, even if SVG is used as a base for the icons, a manual pass is still required in order to make the icons look really good.
i can only confirm this. Converting svg images to low resolution does not work at all... Maybe starting from 128x128 svgs are acceptable, but i have not tested this. Nerveless I would recommend to rework all icons to svg , so for future use they are in a nice scalable format...

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #7 on: June 20, 2018, 08:50:39 am »
Work progress

There was created a project called "cb-icons" on github ( https://github.com/specialmart/cb-icons ).
Currently were created only icons used by Debugger plugin.
Icons are created in SVG format using Inkscape and are exported to PNGs. Normaly are created two SVG files for each icon. "*32.svg" are used for export to 32, 36, 128 size PNG files. "*24.svg" or "*48.svg" are used to export to 48 size PNG files. Lines in SVG files are drawn on pixel locations to make PNG look sharp.

Please write your suggestions about the icons.

Questions:
1) Icons are created in 32, 48, 64, 128 size. Icons of 16 size and 22 (for toolbars only) size are already shipped with C::B. Is it OK?
2) It seems to me, that some icons in the image directory "trunk/src/src/resources/images/" are unused. E.g. "compile.png", "compilerun.png" etc. I think, that the Compiler plugin has its own icon set. Am I wrong? Perhaps, can somebody remove unused icons from the C::B repository? Or just write me a list with the unused icons?



Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #8 on: June 20, 2018, 09:23:50 am »
1. What about the 24 and 28? I'm currently using size 22 on a 160dpi monitor and they look almost right. The pngs for size 32 looked blurry in firefox, but the svg looked sharper.
2. You'll have to search the source for every icon. :(
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #9 on: June 20, 2018, 09:32:46 am »
Do we need 24 icons, when 22 already exist?

Note: If you look icons directly from a browser, make sure that the zoom level is at 100%. Otherwise, any image is blurred.
« Last Edit: June 20, 2018, 09:35:07 am by darmar »

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #10 on: June 20, 2018, 10:13:16 am »
Not sure about 24.
It would probably be good if we support scales like 1.25, 1.5, 1.75, 2.0. If we select 16 as base. We get 20, 24, 28, 32.
Also we need some code to select the size automatically, but I guess this is doable in later wx's and it is a separate issue.

Yes, I'm looking the image at 100%, but the blurriness might be caused because the browser does some scaling due to my higher dpi. I've opened it in an image browser and it looks fine.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #11 on: June 20, 2018, 11:56:15 pm »
They look really good! Good job!

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #12 on: January 27, 2019, 06:34:34 pm »
The work on the icons was going perhaps too slow, but now most of the icons are finished. See on https://github.com/specialmart/cb-icons. Every icon has SVG files in 20, 24, 28 and 32 size which are used to export automatically to 20, 24, 28, 32, 40, 48,... pixel size png files. The person who worked on them (not me) is not professional designer, therefore some adjustment may be required in the future.

Before creation of more icons, I think, it would be nice to know the way how to integrate these icons into C::B code.

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #13 on: January 27, 2019, 07:18:05 pm »
If we work on them, can we repack them? Put them in zip archives for every plugin? So all icons/images are not all in one folder, but grouped to the plugin where they should be? This would make install, uninstall plugins make much more straight forward.

For loading them from the zip file we could add some loader function to the plugin class for easy access...

I use this approach in my plugins and i think it is a lot more cleaner then putting them in the global image folder...

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #14 on: January 27, 2019, 08:43:36 pm »
Before creation of more icons, I think, it would be nice to know the way how to integrate these icons into C::B code.

Do you want to do the work? Or are you asking if any of us could/would do it? I can integrate them during next week...

If we work on them, can we repack them? Put them in zip archives for every plugin? So all icons/images are not all in one folder, but grouped to the plugin where they should be? This would make install, uninstall plugins make much more straight forward.

What do you mean?
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #15 on: January 28, 2019, 12:04:11 am »
Plugins like wxSmith or BrowseTracker or debugger have a lot images. All this images are stored in the share\CodeBlocks\images folder or in the  share\CodeBlocks\resources.zip\images archive
I do not know which one are used, but i do not think they should be mixed like that...

The icons and images for the wxSmith plugin should be in share\CodeBlocks\wxsmith.zip
for the debugger plugin in share\CodeBlocks\debugger.zip
ecc...

What is specially do not like about this is when you uninstall one of this plugins, the images still remain in the folder and are not deleted...

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #16 on: January 28, 2019, 01:26:19 am »
for the debugger plugin in share\CodeBlocks\debugger.zip
The debugger plugin almost has no images. I've not checked lately, but most of its images are part of the sdk or src folders.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #17 on: January 28, 2019, 07:24:06 pm »
Today in  "cb-icons" on github direct in "images" folder are only icons used by C::B core, while icons from plugins are in separate directories. I can change this order if it is required.

Quote
Do you want to do the work? Or are you asking if any of us could/would do it? I can integrate them during next week...

If you can integrate these icons into C::B tree, it is perfect. I think, that developers of C::B are those who decide about the structure of the code.

About wxSmith plugin. It has a lot of icons and no one was created yet. Do somebody can tell me how these icons was created?

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #18 on: January 28, 2019, 07:42:06 pm »
Today in  "cb-icons" on github direct in "images" folder are only icons used by C::B core, while icons from plugins are in separate directories. I can change this order if it is required.
It is fine the way it is as far as I can tell, I'll ask questions if there are problems.

If you can integrate these icons into C::B tree, it is perfect. I think, that developers of C::B are those who decide about the structure of the code.

Fine, I'll do it.

About wxSmith plugin. It has a lot of icons and no one was created yet. Do somebody can tell me how these icons was created?

No idea.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #19 on: February 10, 2019, 11:42:48 am »
darmar: Do you know if the person doing the work on the icons wants to be credited in a commit message or the about dialog?
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #20 on: February 10, 2019, 12:39:20 pm »
Specialmart told me, thank in a commit message is OK.

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #21 on: February 10, 2019, 01:49:01 pm »
Should I use 'Specialmart' or some real name?
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #22 on: February 10, 2019, 03:13:22 pm »
Specialmart is OK.

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9488
Re: Problem with icons on HiDPI displays
« Reply #23 on: February 10, 2019, 03:23:28 pm »
Great work, but keep in mind that it might be even simpler:

Most icons are available as SVG in the repo here:

https://svn.code.sf.net/p/codeblocks/code/resources

You only need to save/export these vector graphics in other sizes and you are done for the core.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: http://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: http://wiki.codeblocks.org/index.php?title=FAQ

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #24 on: February 10, 2019, 06:13:04 pm »
Yes, these SVG files were used where was possible. Also this folder contains several SVG icons used in Environment and Editor settings dialogs. However, the icons for these dialogs were not created yet.

By the way, only icons really used in C::B is created. Some icons are in the source tree, however are not used. I remember this is the case with ThreadSearch plugin. It can be, that I just overlooked something. Let me know about it.

SVG files for icons were created as close as possible to the existing *.png icons. However there are exceptions:
1) misc_16x16.png icon. It is blue 3D gear used on "Logs & others" window in "Build log" and "Debugger" tabs. It is quite (too) complicated icon to make in SVG. This icon was changed with a simpler 2D gear icon found in the C::B repo. See screenshot.
2) trash.png icon used in "Start here" tab for reopen recently used projects (can be found in /src/resources/start_here/). I do not want to hurt anyone, however I dislike this icon here. It is like saying for the user: "Your work is just trash. If you like, take it from there." I changed it to an icon with rotating arrows. See screenshot.


Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #25 on: March 03, 2019, 07:07:30 pm »
It turned out that adding the icons would be a lot more involved and complex than I originally thought.
So, I'll do it in two steps:
1. move 22x22 images in a separate folder and make sure everything works
2. add new icons after 1 is complete

So I've implemented step 1. You can see the changes in this branch: https://github.com/obfuscated/codeblocks_sf/tree/ui/move_images

At the moment the code seems to work on linux with both wx2.8 and wx3.x. Unfortunately I don't have the energy to test stuff on windows at the moment. So I'll be really happy if someone volunteers to apply the changes to update*.bat files and do some testing on windows.

Next I plan to see how this modified codeblocks works on macOS.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline stahta01

  • Lives here!
  • ****
  • Posts: 6488
    • My Best Post
Re: Problem with icons on HiDPI displays
« Reply #26 on: March 03, 2019, 09:02:20 pm »
Used your branch to build win64 version of Code::Blocks and CB booted up OK; did not test any plugins.

Tested only 64 bit wxWidgets 3.0 build; patch used below
Code: [Select]
From 9fa06dff4ecceb602411b34e925f061089cf17d5 Mon Sep 17 00:00:00 2001
From: Tim S <stahta01@gmail.com>
Date: Sun, 3 Mar 2019 14:38:10 -0500
Subject: [PATCH] ui: Copy 22x22 images

---
 src/update30_64.bat | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/update30_64.bat b/src/update30_64.bat
index 07388dc3a..bc71ac4a6 100644
--- a/src/update30_64.bat
+++ b/src/update30_64.bat
@@ -16,6 +16,7 @@ if not exist %CB_OUTPUT_RESDIR%\lexers md %CB_OUTPUT_RESDIR%\lexers\
 if not exist %CB_OUTPUT_RESDIR%\images md %CB_OUTPUT_RESDIR%\images\
 if not exist %CB_OUTPUT_RESDIR%\images\settings md %CB_OUTPUT_RESDIR%\images\settings\
 if not exist %CB_OUTPUT_RESDIR%\images\16x16 md %CB_OUTPUT_RESDIR%\images\16x16\
+if not exist %CB_OUTPUT_RESDIR%\images\22x22 md %CB_OUTPUT_RESDIR%\images\22x22\
 if not exist %CB_OUTPUT_RESDIR%\images\codecompletion md %CB_OUTPUT_RESDIR%\images\codecompletion\
 if not exist %CB_OUTPUT_RESDIR%\plugins md %CB_OUTPUT_RESDIR%\plugins\
 if not exist %CB_OUTPUT_RESDIR%\templates md %CB_OUTPUT_RESDIR%\templates\
@@ -30,6 +31,7 @@ if not exist %CB_DEVEL_RESDIR%\lexers md %CB_DEVEL_RESDIR%\lexers\
 if not exist %CB_DEVEL_RESDIR%\images md %CB_DEVEL_RESDIR%\images\
 if not exist %CB_DEVEL_RESDIR%\images\settings md %CB_DEVEL_RESDIR%\images\settings\
 if not exist %CB_DEVEL_RESDIR%\images\16x16 md %CB_DEVEL_RESDIR%\images\16x16\
+if not exist %CB_DEVEL_RESDIR%\images\22x22 md %CB_DEVEL_RESDIR%\images\22x22\
 if not exist %CB_DEVEL_RESDIR%\images\codecompletion md %CB_DEVEL_RESDIR%\images\codecompletion\
 if not exist %CB_DEVEL_RESDIR%\plugins md %CB_DEVEL_RESDIR%\plugins\
 if not exist %CB_DEVEL_RESDIR%\templates md %CB_DEVEL_RESDIR%\templates\
@@ -60,14 +62,14 @@ echo Compressing plugins UI resources
 %ZIPCMD% -jqu9 %CB_DEVEL_RESDIR%\abbreviations.zip plugins\abbreviations\resources\manifest.xml plugins\abbreviations\resources\*.xrc > nul
 echo Packing core UI bitmaps
 cd src\resources
-%ZIPCMD% -0 -qu ..\..\%CB_DEVEL_RESDIR%\resources.zip images\*.png images\12x12\*.png images\16x16\*.png > nul
+%ZIPCMD% -0 -qu ..\..\%CB_DEVEL_RESDIR%\resources.zip images\*.png images\12x12\*.png images\16x16\*.png images\22x22\*.png > nul
 cd ..\..\sdk\resources
-%ZIPCMD% -0 -qu ..\..\%CB_DEVEL_RESDIR%\manager_resources.zip images\*.png images\12x12\*.png images\16x16\*.png > nul
+%ZIPCMD% -0 -qu ..\..\%CB_DEVEL_RESDIR%\manager_resources.zip images\*.png images\12x12\*.png images\16x16\*.png images\22x22\*.png > nul
 echo Packing plugins UI bitmaps
 cd ..\..\plugins\compilergcc\resources
-%ZIPCMD% -0 -qu ..\..\..\%CB_DEVEL_RESDIR%\compiler.zip images\*.png images\16x16\*.png > nul
+%ZIPCMD% -0 -qu ..\..\..\%CB_DEVEL_RESDIR%\compiler.zip images\*.png images\16x16\*.png images\22x22\*.png > nul
 cd ..\..\..\plugins\debuggergdb\resources
-%ZIPCMD% -0 -qu ..\..\..\%CB_DEVEL_RESDIR%\debugger.zip images\*.png images\16x16\*.png > nul
+%ZIPCMD% -0 -qu ..\..\..\%CB_DEVEL_RESDIR%\debugger.zip images\*.png images\16x16\*.png images\22x22\*.png > nul
 cd ..\..\..
 
 echo Copying files
@@ -80,6 +82,8 @@ xcopy /D /y src\resources\images\*.png %CB_OUTPUT_RESDIR%\images > nul
 xcopy /D /y src\resources\images\settings\*.png %CB_OUTPUT_RESDIR%\images\settings > nul
 xcopy /D /y src\resources\images\16x16\*.png %CB_DEVEL_RESDIR%\images\16x16 > nul
 xcopy /D /y src\resources\images\16x16\*.png %CB_OUTPUT_RESDIR%\images\16x16 > nul
+xcopy /D /y src\resources\images\22x22\*.png %CB_DEVEL_RESDIR%\images\22x22 > nul
+xcopy /D /y src\resources\images\22x22\*.png %CB_OUTPUT_RESDIR%\images\22x22 > nul
 xcopy /D /y plugins\codecompletion\resources\images\*.png %CB_DEVEL_RESDIR%\images\codecompletion > nul
 xcopy /D /y plugins\codecompletion\resources\images\*.png %CB_OUTPUT_RESDIR%\images\codecompletion > nul
 xcopy /D /y plugins\compilergcc\resources\compilers\*.xml %CB_DEVEL_RESDIR%\compilers > nul
--
2.21.0.windows.1

« Last Edit: March 03, 2019, 10:47:10 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 32 bit.
On Debian Stretch, compiling CB Trunk against wxWidgets 3.0.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #27 on: March 04, 2019, 12:16:35 am »
Does switching to 16x16 icons work correctly? Do you see images in all four core toolbars?
« Last Edit: March 04, 2019, 02:32:01 am by oBFusCATed »
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #28 on: March 04, 2019, 12:53:46 am »
Committed. I've applied the same changes to the other update.bat scripts hopefully I've not messed something up.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline stahta01

  • Lives here!
  • ****
  • Posts: 6488
    • My Best Post
Re: Problem with icons on HiDPI displays
« Reply #29 on: March 04, 2019, 01:51:13 am »
Does switching to 16x16 icons work correctly? Do you see images in all for core toolbars?

Yes
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 32 bit.
On Debian Stretch, compiling CB Trunk against wxWidgets 3.0.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #30 on: March 06, 2019, 10:22:36 pm »
Does switching to 16x16 icons work correctly? Do you see images in all four core toolbars?
For me it does not work on latest Linux Mint wx3.0 gtk2
If i switch symbol size in the settings and hit OK, the toolbars flash, but do not switch size. I have to restart codeblocks to make the changes happen. If i restart everything looks nice and smooth. Good work to all.
Is this restart expected?
If not i can try to debug it.

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #31 on: March 12, 2019, 09:08:08 am »
Yes it is expected. It event shows a dialog about it.

Probably this should also be fixed some day in order to support moving the window from one monitor to another.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #32 on: March 15, 2019, 09:39:38 am »
@darmar: I'm working on getting the 32x32 icons to work (and then I'll do all the other sizes in bulk), but I've found that project.png is missing from ThreadSearch. Could you arrange to add it to the repo?
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #33 on: March 15, 2019, 09:44:10 am »
Also it would be good if you could notify me for any changes in the repo, because I'm missing the last two commits.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline darmar

  • Multiple posting newcomer
  • *
  • Posts: 53
Re: Problem with icons on HiDPI displays
« Reply #34 on: March 16, 2019, 09:38:48 am »
I have added project.png icons to ThreadSearch. And additionally project.png, project-readonly.png and folder_open.png icons were added to the core.
« Last Edit: March 16, 2019, 09:58:26 am by darmar »

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #35 on: March 16, 2019, 10:44:49 am »
Cool, thanks.

It turned out that the image is binary the same as the image I was using. To me it looks a bit blurry. But I guess it is good enough. This means that 32x32 should work fine now. It doesn't on macOS, but I'll fix this in the next days. Any testing would be appreciated. I'll do some testing on win7, but I won't be able to test this on any other version, so this would be highly appreciated.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #36 on: March 18, 2019, 12:32:56 am »
Can test it on win 10 and mint 18 this week

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #37 on: March 18, 2019, 12:44:42 am »
Good. I've pushed some fixes for windows. I have to test them on linux/macOS.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #38 on: March 20, 2019, 06:47:35 pm »
I sadly have not much time this and the next week but i was able to test a bit:
Windows 10, resolution 1920x1080 and 100% scaling everything looks fine. Even better than in eclipse (no blurry text) ;)
I can not say if there is some to big space of the toolbar or around the controls, this simply does not jump into my eye....

One thing that bothers me is that there is no message box that says you have to restart codeblocks for the changes to work. I also do not have disabled any dialog, so is there one? If not it should be introduced...
As i said top i have not much time for the next weeks ;(

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #39 on: March 30, 2019, 02:14:20 pm »
OK, I think I've finished the changes to add support for crisp 32x32 images on gtk2, gtk3, windows and macOS in 1x and 2x scaling.

For best support of HiDPI you need wx-master. I've tested if the things compile with most configs, but not wx2.8 or  wx3.0 on windows.
I plan to test if using artproviders is better and then I'll commit this to master/trunk in the next week.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #40 on: April 06, 2019, 12:28:58 pm »
The changes are in trunk/master. If you have problems don't hesitate to report them. Sometime next week I'll probably add the other sizes.
Also I plan to remove the 22x22 size, because it seems redundant.
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 2298
Re: Problem with icons on HiDPI displays
« Reply #41 on: April 06, 2019, 02:25:48 pm »
Looks fine for me windows 7 and windows 10
wx30 (for the moment)

beside this:
Quote
One thing that bothers me is that there is no message box, or any hint, that says you have to restart codeblocks for the changes to work.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5215
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Problem with icons on HiDPI displays
« Reply #42 on: April 07, 2019, 04:33:08 pm »
Looks fine for me windows 7 and windows 10
wx30 (for the moment)

beside this:
Quote
One thing that bothers me is that there is no message box, or any hint, that says you have to restart codeblocks for the changes to work.

I'm building the C::B rev11623 against wx git master(909adbb6bf832ada3db034cffc5548b8309a1602, note VZ has fix some toolbar related issue in the wx git master recent days, see discussion here: possible to make wxChoice a little shorter(smaller) inside wxToolbar - Google Groups), under mingw-w64's GCC 7.2 32bit compiler, the icon works fine! Thanks.

I think a "restart" hint should show up so people will restart C::B to let the change of icon take effect.

BTW, the dialog somehow shows some layout issue, but maybe, it is not C::B related, see image shot in attachment:
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline Miguel Gimenez

  • Almost regular
  • **
  • Posts: 234
Re: Problem with icons on HiDPI displays
« Reply #43 on: April 07, 2019, 08:51:49 pm »
Quote
BTW, the dialog somehow shows some layout issue
That's due to the wxCB_SIMPLE flag being used in the combobox, removing it fixes the issue. I have attached a patch.
« Last Edit: April 08, 2019, 11:59:44 am by Miguel Gimenez »

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5215
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Problem with icons on HiDPI displays
« Reply #44 on: April 08, 2019, 04:26:06 pm »
Quote
BTW, the dialog somehow shows some layout issue
That's due to the wxCB_SIMPLE flag being used in the combobox, removing it fixes the issue. I have attached a patch.
Thanks Miguel Gimenez for the patch. It works fine on my system(wx master, which is wx 3.1.2).
OK to commit?
I currently don't have other wx library, I see the patch fixed the same issue under wxsmith's preview (in C::B prebuild against wx 3.1.1), does it cause regression other wx version, such as wx 2.8?
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #45 on: April 08, 2019, 07:46:54 pm »
The proper fix for this is to use wxChoice...
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

Offline Miguel Gimenez

  • Almost regular
  • **
  • Posts: 234
Re: Problem with icons on HiDPI displays
« Reply #46 on: April 09, 2019, 11:43:05 am »
Quote
The proper fix for this is to use wxChoice...

OK, this patch changes wxComboBox to wxChoice

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 11647
    • Travis build status
Re: Problem with icons on HiDPI displays
« Reply #47 on: April 10, 2019, 08:51:54 am »
Thanks, I'll apply in the next days...
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]