kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #29338
Re: [FEATURE] Component table viewer
Wayne,
Thanks for merging!
I will address those points at some stage - there are other ideas I have
too but I thought it was better to get the first iteration done and make
incremental improvements.
Regards,
Oliver
On 3 May 2017 03:25, "Wayne Stambaugh" <stambaughw@xxxxxxxxx> wrote:
> Oliver,
>
> This is looking pretty good so I merged your patches into the master
> branch. I do have a few minor changes that I would like you to make at
> some point:
>
> * Move the OK and Cancel buttons to the bottom of the dialog using a
> wxStdDialogButtonSizer.
>
> * Use dialog style wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER. This will
> remove the stay on top option from the dialog style and add the close
> button decorator to the title bar.
>
> * Set the initial column widths based on their contents rather than
> using a fixed width.
>
> This is a good start but hopefully over time this tool will be extended
> to become a component properties editor rather than just a component
> field editor. This would be a lot more convenient than opening the
> component properties dialog for every component to edit component
> properties.
>
> Thank you for your contribution to KiCad.
>
> Cheers,
>
> Wayne
>
>
> On 4/25/2017 4:22 AM, Oliver Walters wrote:
> > Wayne,
> >
> > I have reattached all patches including a new one which does the
> following:
> >
> > a) Removes BOM export
> > b) Removes Save/Cancel dialog as per JP's request
> > c) Fixes speed issue as per JP's request
> > d) Small bugfix
> >
> > These should apply directly to latest master branch.
> >
> > Cheers
> >
> > On Tue, Apr 25, 2017 at 12:43 AM, Wayne Stambaugh <stambaughw@xxxxxxxxx
> > <mailto:stambaughw@xxxxxxxxx>> wrote:
> >
> > Oliver,
> >
> > Thank you for your understanding on this issue. Once you include the
> > patch to remove the BOM code, I will merge this into the master
> branch.
> >
> > Cheers,
> >
> > Wayne
> >
> > On 4/23/2017 5:41 PM, Oliver Walters wrote:
> > > Wayne,
> > >
> > > I tend to agree actually, as I have been developing this the less I
> > > think having a BoM export is appropriate:
> > >
> > > 1. Separation of tasks - it's simpler and cleaner just as an
> editing table
> > > 2. Python (etc) is way better at data manipulation
> > > 3. External scripts are by design much more flexible.
> > >
> > > I have some ideas for improving BOM output but I am now thinking
> they
> > > would be best served not integrated here.
> > >
> > > I will remove the buttons and leave those thoughts for another
> conversation.
> > >
> > > Oliver
> > >
> > > On 24 Apr 2017 01:47, "Wayne Stambaugh" <stambaughw@xxxxxxxxx
> <mailto:stambaughw@xxxxxxxxx>
> > > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>>
> wrote:
> > >
> > > Oliver,
> > >
> > > I finally got a chance to test your patch set and was a bit
> > surprised
> > > what I saw after following the conversation on the mailing
> > list. I was
> > > under the impression that this was a generic component
> properties
> > > editing grid not a BOM tool which is what it really is. I
> > like the idea
> > > of being able to edit component fields in table form. I'm
> > less thrilled
> > > about the BOM export options. For those of you who haven't
> > been around
> > > very long, Eeschema used to have a BOM dialog. It didn't
> > allow for
> > > editing field values but it contained options for various BOM
> > output
> > > types. Initially this dialog was simple and contained only a
> > few BOM
> > > output types and options. Of course everyone has their own
> > idea of how
> > > a BOM should be formatted so gradually over time, the BOM
> > dialog and the
> > > underlying BOM output code became a huge mess. It was finally
> > decided
> > > that the design was no longer maintainable and removed. It
> > was replaced
> > > by the current system along with samples that provided all of
> > the same
> > > BOM output options from the old BOM dialog. Except for the
> field
> > > editing grid, your dialog and BOM code looks a lot like the
> > original BOM
> > > dialog. I can see the same thing happening all over again.
> > Why no use
> > > the existing BOM generation code in your dialog rather than
> > re-implement
> > > code that does the exact same thing? I'm not opposed to field
> > editing
> > > part of the dialog, but I see the BOM output part heading the
> same
> > > direction as the old BOM dialog.
> > >
> > > On 4/20/2017 1:59 AM, Oliver Walters wrote:
> > > > Wayne,
> > > >
> > > > Is the behaviour I have implemented acceptable?
> > > >
> > > > Regards,
> > > > Oliver
> > > >
> > > > On Wed, Apr 19, 2017 at 12:13 AM, Oliver Walters
> > > > <oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>
> > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>>
> > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>
> > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>>>>
> > > > wrote:
> > > >
> > > > Wayne,
> > > >
> > > > I have now fixed this such that UNDO actions are pushed
> to the
> > > UNDO
> > > > stack for the associated sheet. All UNDO actions for a
> given sheet
> > > > are grouped so a single Ctrl-Z will undo all components
> changed in
> > > > the table (for the given sheet).
> > > >
> > > > Please find patch _007 attached (must be appli ed atop
> all
> > > previous
> > > > patches).
> > > >
> > > > Let me know if you see any other pressing issues.
> > > >
> > > > Regards,
> > > > Oliver
> > > >
> > > > On Tue, Apr 18, 2017 at 6:30 AM, Wayne Stambaugh
> > > > <stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>
> > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>
> > > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>
> > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>>> wrote:
> > > >
> > > > On 4/17/2017 4:18 PM, Oliver Walters wrote:
> > > > > So how do we proceed here? Is there a 'global' undo
> > > stack? If not:
> > > >
> > > > Unfortunately there is no global undo stack. Undo
> > stacks are
> > > > maintained
> > > > for each unique SCH_SCREEN (schematic file) object.
> > > >
> > > > >
> > > > > A) don't allow changes made in the component table
> > > viewer to be undone
> > > > > B) Make an undo entry for each sheet that has
> changed
> > > symbols
> > > > >
> > > > > A) is easier but the user would need to
> > > quit-without-save to undo changes
> > > >
> > > > This is less than desirable
> > > >
> > > > >
> > > > > B) is more difficult and doesn't solve the undo
> > > operations getting out
> > > > > of order either, as the user could inject another
> > > operation on a given
> > > > > sheet.
> > > >
> > > > This would be my preference. Out of order
> > operations are
> > > already an
> > > > issue so this solution doesn't make that issue any
> > worse.
> > > > Undo/redo is
> > > > only available for the current sheet so the user
> > would have to
> > > > change
> > > > sheets in order to undo anything changed in the
> > component
> > > > properties table.
> > > >
> > > > >
> > > > > Suggestions?
> > > > >
> > > > > On 18 Apr 2017 01:26, "Wayne Stambaugh"
> > > <stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>
> > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>
> > > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>
> > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>>
> > > > > <mailto:stambaughw@xxxxxxxxx
> > <mailto:stambaughw@xxxxxxxxx>
> > > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>
> > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>
> > > <mailto:stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>>>>
> > wrote:
> > > > >
> > > > > On 4/17/2017 10:21 AM, jp charras wrote:
> > > > > > Le 17/04/2017 à 04:11, Oliver Walters a
> écrit :
> > > > > >> JP, others,
> > > > > >>
> > > > > >> After further investigation, I have worked
> out
> > > why the components
> > > > > with duplicated references were
> > > > > >> displaying incorrectly.
> > > > > >>
> > > > > >> Patch_004 is attached, Thomas can you
> confirm
> > > that it fixes the
> > > > > display for you?
> > > > > >>
> > > > > >> Kind Regards,
> > > > > >> Oliver
> > > > > >>
> > > > > >> On Mon, Apr 17, 2017 at 7:53 AM, Oliver
> Walters
> > > > > <oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>
> > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>>
> > > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>
> > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>>>
> > > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>
> > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>>
> > > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>
> > > <mailto:oliver.henry.walters@xxxxxxxxx
> > <mailto:oliver.henry.walters@xxxxxxxxx>>>>
> > > > > >
> > > > > > Good work, Oliver!
> > > > > >
> > > > > > I found 2 issues (tested on W7)
> > > > > >
> > > > > > 1 - m_reloadTableButton is not correctly
> > > enabled/disabled.
> > > > > > This is due to the way events are managed,
> > and this is
> > > > OS dependent.
> > > > > > To avoid this issue, enable/disable it
> inside a
> > > > wxUpdateUIEvent
> > > > > attached to this button.
> > > > > >
> > > > > > 2 - ESC key and ENTER keys do not dismiss
> > the dialog.
> > > > > > This is due to the fact you do not have a
> > > > wxStdDialogButtonSizer,
> > > > > and no OK and Cancel button.
> > > > > > Please, add it and use the OK button (as
> > usual in a
> > > > dialog) to
> > > > > transfer changes to schematic (do not
> > > > > > use a wxCloseEvent to manage that), and
> > obviously
> > > Cancel
> > > > just
> > > > > closes the dialog.
> > > > > > To do this transfer, just override
> > > > TransferDataFromWindow(), that
> > > > > is called by wxWidgets when
> > > > > > closing a dialog by the OK button.
> > > > > >
> > > > > > About other things, undo/redo lists should
> > manage only
> > > > changes
> > > > > made inside the corresponding sheet,
> > > > > > not in other sheets, to avoid
> > inconsistencies and
> > > > therefore crashes.
> > > > > >
> > > > >
> > > > > This is one of the reasons I've been reluctant
> > to accept
> > > > code that
> > > > > attempts to change the state of a SCH_SCREEN
> > object
> > > other
> > > > than the
> > > > > current SCH_SCREEN object. It exposes a known
> > flaw
> > > in our
> > > > schematic
> > > > > undo/redo design and I have yet to see anyone
> > update the
> > > > undo/redo
> > > > > SCH_SCREEN stacks correctly. I see the
> > potential for
> > > > serious issues if
> > > > > you do not keep the undo/redo stacks properly
> > synced.
> > > > Once you allow
> > > > > the modification of information in the
> > SCH_SCREEN object
> > > > other than the
> > > > > current one, you need to update the undo/redo
> > stack for
> > > > the appropriate
> > > > > SCH_SCREEN object. Otherwise, you wont be
> > able to undo
> > > > all of the
> > > > > changes correctly.
> > > > >
> > > > > ______________________________
> _________________
> > > > > Mailing list:
> > > https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>
> > > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>>
> > > > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>
> > > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>>>
> > > > > Post to :
> > kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> > > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>>
> > > > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> > > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>>>
> > > > > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> > > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>>
> > > > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> > > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
> > <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>>>>
> > > > > Unsubscribe :
> > > https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>
> > > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>>
> > > > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>
> > > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>
> > > <https://launchpad.net/~kicad-developers
> > <https://launchpad.net/~kicad-developers>>>>
> > > > > More help :
> > https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>
> > > <https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>>
> > > > <https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>
> > > <https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>>>
> > > > > <https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>
> > > <https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>>
> > > > <https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>
> > > <https://help.launchpad.net/ListHelp
> > <https://help.launchpad.net/ListHelp>>>>
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
Follow ups
References
-
[FEATURE] Component table viewer
From: Oliver Walters, 2017-04-01
-
Re: [FEATURE] Component table viewer
From: jp charras, 2017-04-17
-
Re: [FEATURE] Component table viewer
From: Wayne Stambaugh, 2017-04-17
-
Re: [FEATURE] Component table viewer
From: Oliver Walters, 2017-04-17
-
Re: [FEATURE] Component table viewer
From: Wayne Stambaugh, 2017-04-17
-
Re: [FEATURE] Component table viewer
From: Oliver Walters, 2017-04-18
-
Re: [FEATURE] Component table viewer
From: Oliver Walters, 2017-04-20
-
Re: [FEATURE] Component table viewer
From: Wayne Stambaugh, 2017-04-23
-
Re: [FEATURE] Component table viewer
From: Oliver Walters, 2017-04-23
-
Re: [FEATURE] Component table viewer
From: Wayne Stambaugh, 2017-04-24
-
Re: [FEATURE] Component table viewer
From: Oliver Walters, 2017-04-25
-
Re: [FEATURE] Component table viewer
From: Wayne Stambaugh, 2017-05-02