Footprint Editor is unclear when editing from board

Bug #1795961 reported by Seth Hillbrand on 2018-10-03
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Jeff Young

Bug Description

When we are editing a footprint on the board, we should be clear where the footprint comes from and where it will be saved.

- Open an existing board
- Select a footprint
- Press Ctrl-E to edit the footprint

Now, when the footprint editor opens, I think we should do a few things to ensure the user knows they are editing/saving a footprint only on the board:

1) Window title
 - Right now, the window title says "Footprint Library Editor -- <libname>:<footprintname>
 - I think we should change this to say "Footprint Editor -- <boardname>( <libname>:<footprintname> )" This will make clear that the user is editing a footprint, not a library and where the footprint comes from.

2) Library List
 - When opened from the board, I don't think we should show the library list panel. This can be a checkbox in the view menu that is unchecked when opened on a board footprint by default and checked when opened otherwise

3) Save button
 - When opened from the board, the save button should be a different picture. Ideally, I think it should be the compliment of the "Load footprint from current board" button. In other words, point the blue arrow down instead of up. This makes it clear that the save is the compliment of that load operation.
 - When opened from the board, the tooltip on the save button should be "Save footprint to current board" instead of "Save Changes".

4) File menu
 - Load footprint from current board and Save footprint to current board should be menu items in the file menu.
 - Save footprint to current board should be a different menu option from "Save" and when one is available, the other should be disabled.

I'd like to hear others' thoughts on their preferred UI design here.

Application: kicad
Version: (6.0.0-rc1-dev-664-g6c693f80a-dirty), release build
    wxWidgets 3.0.2
Platform: Linux 4.9.0-8-amd64 x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.2 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
    Boost: 1.62.0
    OpenCASCADE Community Edition: 6.8.0
    Compiler: GCC 6.3.0 with C++ ABI 1010

Build settings:

Hi Seth,

Some good ideas.

For the title, I’d be inclined to always start with “Footprint Editor”, and when it’s a board item just show “<boardname>:<refdes>”. (If they want to know the library reference they can look in the status bar.)

I like having the library tree there, even when editing a board footprint. I agree that it can be confusing, but I also hate when stuff comes and goes. (Another idea would be to have a “Board” library in the library tree, with a list of refdes's under it. But in some ways this might be more confusing.)

We used to be very specific about Save actions (showing the type of object, etc.), but have recently tried to be more generic to better fit platform guidelines. Sometimes being more specific just makes things more complicated.


Seth Hillbrand (sethh) wrote :


Title: I like your idea for a more concise title. We may consider differentiating the board name from the way we display library name (so no colon). Maybe "<boardname>[<refdes>]"

On the tree, we could nest three top-level items: Board, Project Libraries, Global Libraries. I'm forever trying to remember what the exact name of my project library is to find it in the alphabetical list. Under the board, we only have footprints. Under the other two, we have the libraries but less indented than the footprints. Maybe only 1 char instead of 2?

While I understand and support the reasons for simplifying the save icon, I think current save button is misleading for editing footprints on the board as it doesn't save to disk, it only updates in memory on the board. Are there guidelines that you know of for this? I've been looking but came up dry.

Jeff Young (jeyjey) wrote :

BTW, I went ahead and implemented the title change. I tried out a bunch of different formats, and ended up with basically an inversion of Seth's proposal:

<refdes> [from <boardname>]

The tree and save issues are more problematic. The closer we integrate the board-item-editing into the tree, the higher the expectation that Save, etc. will work the same. And as Seth points out, they can't.

Maybe this is a good place to have a context-dependant Save/Update Board command, and not integrate the board into the tree.

Jeff Young (jeyjey) on 2018-11-12
Changed in kicad:
importance: Undecided → Wishlist
status: New → Triaged
Jeff Young (jeyjey) wrote :

I've made the Save/Update Board command context-sensitive.

Changed in kicad:
assignee: nobody → Jeff Young (jeyjey)
status: Triaged → In Progress
milestone: none → 6.0.0-rc1
KiCad Janitor (kicad-janitor) wrote :

Fixed in revision ca25f352ce2c215cabf481c0d3720ab8388f0a37

Changed in kicad:
status: In Progress → Fix Committed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers