Pcbnew: File -> Board Setup "Grid Titles Truncated"

Bug #1788495 reported by Dick Hollenbeck on 2018-08-22
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Low
Seth Hillbrand

Bug Description

Application: kicad
Version: (6.0.0-rc1-dev-139-gf766e870b-dirty), release build
Libraries:
    wxWidgets 3.1.1
    libcurl/7.58.0 OpenSSL/1.1.0g zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Platform: Linux 4.15.0-23-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.1.1 (wchar_t,STL containers) GTK+ 2.24
    Boost: 1.65.1
    Curl: 7.58.0
    Compiler: GCC 7.3.0 with C++ ABI 1011

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_WXPYTHON=OFF
    KICAD_SCRIPTING_ACTION_MENU=OFF
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=OFF
    KICAD_USE_OCC=OFF
    KICAD_SPICE=OFF

See attached PNG for Net Classes panel showing grid titles that are not legible. Font size assumptions are unfair to the blind and ageing.

Not only are the grid titles truncated, but see that the numbers themselves are not legible within the cells.

Tags: ui Edit Tag help
Dick Hollenbeck (dickelbeck) wrote :
Changed in kicad:
milestone: none → 5.1.0
tags: added: ui
Jeff Young (jeyjey) on 2018-08-23
Changed in kicad:
assignee: nobody → Jeff Young (jeyjey)
status: New → In Progress
importance: Undecided → Low
Jeff Young (jeyjey) wrote :

Hi Dick, could you try out the attached patch? Thanks!

KiCad Janitor (kicad-janitor) wrote :

Fixed in revision 8957008c2a3262ee5ea16e7e303d474e5bb2cbe5
https://git.launchpad.net/kicad/patch/?id=8957008c2a3262ee5ea16e7e303d474e5bb2cbe5

Changed in kicad:
status: In Progress → Fix Committed
Dick Hollenbeck (dickelbeck) wrote :

Application: kicad
Version: (6.0.0-rc1-dev-541-ge7a0b3d5d-dirty), release build
Libraries:
    wxWidgets 3.1.1
    libcurl/7.58.0 OpenSSL/1.1.0g zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Platform: Linux 4.15.0-23-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.1.1 (wchar_t,STL containers) GTK+ 2.24
    Boost: 1.65.1
    Curl: 7.58.0
    Compiler: GCC 7.3.0 with C++ ABI 1011

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_WXPYTHON=OFF
    KICAD_SCRIPTING_ACTION_MENU=OFF
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=OFF
    KICAD_USE_OCC=OFF
    KICAD_SPICE=OFF

No, I don't see a fix in the above version.
See attached image of this dialog. More over that dialog is not resizeable.

Also, see Text and Graphics.png,

I could send you 20 screen shots of different dialogs that are broken.

Dick Hollenbeck (dickelbeck) wrote :
Dick Hollenbeck (dickelbeck) wrote :

This would not be so bad, except that I spent a lot of time
making the original dialogs functional.

Now this is absolute shit, and I am not sorry about saying it.

Some people should just stop.

Dick Hollenbeck (dickelbeck) wrote :

Just so you know, these are not improvements.

Dick Hollenbeck (dickelbeck) wrote :

There are 3 things wrong here:

1) I cannot find my footprint by text, there is no way to resize the left most column.

2) The window title is wrong, this is a browser, not an editor.

3) This code should never have been committed.

It reminds me of the web developer who spends a few minutes looking at his new webpage in Explorer, and then getting reports that other browsers cannot show the page properly.

You expect some of that, but I don't expect it to get deployed before it's ready.

Changed in kicad:
status: Fix Committed → New
Jeff Young (jeyjey) wrote :

The left-most column is resized by dragging the splitter bar. (Although in your screen-shot it's wider than the default, so you must have already figured that out?)

No, that's the editor. The browser has two columns on the left (library and footprint). Click the icon that looks like books and a magnifying glass to get the browser.

Changed in kicad:
assignee: Jeff Young (jeyjey) → nobody
milestone: 5.1.0 → none
Seth Hillbrand (sethh) wrote :

Hi Dick-

It sounds like this is a very frustrating experience for you at the moment. It will help us to resolve these issues if we approach them systematically and in separate reports.

Would you be up for helping us work through the issues? As you are the first person who has noticed (or maybe mentioned) the issues above, it would be valuable if you could give us a bit more information about your system's setup.

1) Which window manager are you using?
2) What are the font settings (face + size)?

Seth Hillbrand (sethh) wrote :

@Jeff- On linux, there is no splitter, fyi. I assume it shows up on the Mac?

Jeff Young (jeyjey) wrote :

@Seth, interesting. Is the same true in the Symbol Editor (ie: no splitter on GTK)?

And what about the Footprint Library Browser? It should have two....

Seth Hillbrand (sethh) wrote :

@Jeff- Yes, same look. Without the heads in the columns, we cannot resize them. There is a splitter between the panel and the main sheet but nothing to drag between the columns.

Here's an example patch to allow these to be re-sized. Should we enable it on Mac as well or GTK-only?

Before pushing, we'll want to store these values as well for the column widths I think.

Jeff Young (jeyjey) wrote :

@Seth, I tried out the patch and it is (marginally) more confusing/cluttered with the header so I think we should conditionally compile it.

See screenshot.

Hmm... what about making the header zero-height? Do we still get the splitter bar then on GTK?

Seth Hillbrand (sethh) wrote :

@Jeff-

Sure thing. I tested on the Mac and the columns also cannot be resized (see attached image). We can resize the space both columns are provided into the canvas but we can't increase the space of the first column by dragging anywhere.

However, on the mac, the columns are auto-sized to fit the full content correctly (they are not on linux), so this is probably less of an issue there.

Dick Hollenbeck (dickelbeck) wrote :

@Seth. Thanks, you have a nice touch. Yes very frustrating, since I spent time on everyone of the original dialogs, if not outright wrote them completely, and now that investment is poof, and the software is not friggin' useable. So you got that right my friend.

I am not getting these bug comments as emails, used to get them as emails, so my turn around time may be sluggish.

I have (2) 28" monitors, and use large fonts, necessarily. My Mom has macular degeneration. I've been afraid to find out about myself.

Ubuntu 18.04 Window manager: Mate.
Font & size: see DicksFonts.png
Newest build I made from fresh pull yesterday:

Application: kicad
Version: (5.1.0-rc1-51-gd1e747518-dirty), release build
Libraries:
    wxWidgets 3.1.1
    libcurl/7.58.0 OpenSSL/1.1.0g zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) nghttp2/1.30.0 librtmp/2.3
Platform: Linux 4.15.0-45-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.1.1 (wchar_t,STL containers) GTK+ 2.24
    Boost: 1.65.1
    Curl: 7.58.0
    Compiler: GCC 7.3.0 with C++ ABI 1011

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=OFF
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=OFF
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=OFF
    KICAD_USE_OCC=OFF
    KICAD_SPICE=OFF

Jeff Young (jeyjey) wrote :

Ahh... we're talking about different columns. Seth and Dick are talking about the column *within* the tree; I was talking about the column that *holds* the tree.

I don't think I'd be inclined to allow resizing of the columns *in* the tree on any of the platforms. I'd prefer just fixing the autosizing on GTK.

Hmm... that assumes the tree scrolls sideways on GTK. I assume it does?

Seth Hillbrand (sethh) wrote :

@Jeff-

Yes, the tree scrolls horizontally as well as vertically. I'd love to figure out the autosizing on GTK generically as it doesn't work for grids as well as treeviews. Haven't dug into it much but I imagine we'll need to overload and call something to calculate a character width from the system. That would catch the extra large fonts on GTK as well. On the Mac, it seems less of an issue as they don't allow changing font size independent of screen resolution (at least as far as I can tell in the standard system settings)

KiCad Janitor (kicad-janitor) wrote :

Fixed in revision 76600e343616ba016eefef5ab859bd7301effdf1
https://git.launchpad.net/kicad/patch/?id=76600e343616ba016eefef5ab859bd7301effdf1

Changed in kicad:
status: New → Fix Committed
assignee: nobody → Seth Hillbrand (sethh)
Seth Hillbrand (sethh) wrote :

@Dick- I've added some logic to re-space the columns based on the actual data and/or headers in a few of the grids. I'll have a look around for others that might be broken in an accessibility view. However, your help in this would be appreciated as you run with large fonts on a regular basis.

Note, we're happy to fix issues you encounter. In exchange, it would be super helpful if your reports could focus on what the issue is and what you'd like to see instead.

I'm setting the report back to Triaged as this doesn't address libtree. I need to think more carefully about this one unless Jeff or others have some good thoughts about how to incorporate autosizing, a la TWO_COLUMN_TREE_LIST

Changed in kicad:
assignee: Seth Hillbrand (sethh) → nobody
status: Fix Committed → Triaged
Wayne Stambaugh (stambaughw) wrote :

@Seth, I took a quick look at this patch. Is there any way we could unify this in our GRID_TRICKS object or some other base object derived from wxGrid? The problem is if we us wxGrid in yet another window or dialog, the developer have to know that the title column sizing is broken or we will get yet another bug report for that wxGrid. If this is fixed in an object derived from wxGrid, we get this fix everywhere we use the derived object.

Seth Hillbrand (sethh) wrote :

@Wayne- That's the correct way although I don't think that there's a good method for automatic sizing yet. I've pushed an abstraction up to WX_GRID that allows us to extract the actual visible information from the grid and use that a developer can then use set the widths. It doesn't work correctly for grids that have non-textual information in them (checkboxes, drop-downs, etc), so there's still some work to be done to abstract a full method for these, maybe with an overloaded routine for cells. But I think that that is better suited to 6.0 development atm.

Wayne Stambaugh (stambaughw) wrote :

@Seth, no problem pushing this to v6. I wonder if this problem still exists on wx3.1. It may have already been addressed.

KiCad Janitor (kicad-janitor) wrote :

Fixed in revision a74aa3850a394d5bdd18bf4d4b26a8681bb09702
https://git.launchpad.net/kicad/patch/?id=a74aa3850a394d5bdd18bf4d4b26a8681bb09702

Changed in kicad:
status: Triaged → Fix Committed
assignee: nobody → Seth Hillbrand (sethh)
Seth Hillbrand (sethh) wrote :

And one more fix in this series. This time for the library columns. But leaving the bug open to address the remaining abstractions for WX_GRID

Changed in kicad:
milestone: none → 6.0.0-rc1
status: Fix Committed → Triaged
Dick Hollenbeck (dickelbeck) wrote :

@Seth: things are looking BETTER! Thank you so much. See this
dialog by comparison, is wonderful. I can actually pick a footprint now. (I literally could not choose a footprint before.)

Dick Hollenbeck (dickelbeck) wrote :

This FootprintProperties dialog is also MUCH better. There is still a glitch in the 1st column however. Two issues:
a) The initial width is wrong as you can see.
b) The column sizing works until you release the drag, then it snaps back to this width.

b) is not a problem with any column other than the first one, they resize nicely, and a) is also not a problem so the need to resize is not immediate.

My understanding is that we are fighting wxWidgets on this grid stuff right?

Seth Hillbrand (sethh) wrote :

Hmm... That footprint properties looks new. But that's a good opportunity to track down what went wrong. I think it's fixed now.

We are, perhaps, having very in depth discussions with wxWidgets on the proper way to display a grid across three platforms. wxWidgets has had a pint or six before the discussion began and is certainly a loud drunk.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers