← Back to team overview

kicad-developers team mailing list archive

Re: CvPcb Save

 

To disk.  See the first email in the thread.

> On 20 Mar 2018, at 20:23, Russell Oliver <roliver8143@xxxxxxxxx> wrote:
> 
> Blind saving from CvPCB to memory or disk?
> 
> IMO, saving the schematic to disk should be done consciously by the user, from the main window of eeschema. Closing the CvPCB should silently update the footprint links on the schematic in memory. 
> 
> On Wed, 21 Mar 2018 07:10 Jeff Young, <jeff@xxxxxxxxx <mailto:jeff@xxxxxxxxx>> wrote:
> FWIW, I implemented blind-saving the schematic from CvPcb’s Save command so I could play around with it, and it feels natural enough...
> 
>> On 20 Mar 2018, at 19:44, Jeff Young <jeff@xxxxxxxxx <mailto:jeff@xxxxxxxxx>> wrote:
>> 
>> I think the cleanest user model would be to make both CvPcb and the Symbol Table alternative views of the document.  However, that either suggests a tabbed presentation (where two views are not visible at once), or hooking up CvPcb and the Symbol Table to reflect changes made in the schema.
>> 
>> Given that the normal use-case is more batch-oriented (the user has other tools to do single associations or edit single symbol fields), I don’t think it warrants that kind of investment.
>> 
>> So that means we’re stuck with a more modal approach.  (Note that while CvPcb is the equivalent of modeless today, it doesn’t update in real-time, and silently drops changes made to symbols which no longer exist in the schema.)
>> 
>> It sounds like we’re coalescing around having save be active in the (modal) dialogs.  How do we communicate that?  Perhaps just a “Save” button in the dialog is good enough — it both gives them the idea that this is just a dialog to the parent application (so “obviously” Save will save the parent schematic), and at least a clue that they can cmd-S as well.
>> 
>> If that’s the direction we want to move in, then I can just have CvPcb’s Save write the schema to disk for 5.0.  Re-presenting CvPcb as a dialog is probably too large (ie: risky) for 5.0.
>> 
>> 
>> 
>>> On 20 Mar 2018, at 18:00, Bernhard Stegmaier <stegmaier@xxxxxxxxxxxxx <mailto:stegmaier@xxxxxxxxxxxxx>> wrote:
>>> 
>>> On a second thought it is basically just another special “Symbol Table” edit dialog.
>>> 
>>> The problem of losing a lot of unsaved work in case of a crash is also there for the “Symbol Table” dialog.
>>> I could hack in a lot of valuable data in custom fields and although this dialog has an “Apply” button, you can’t save there.
>>> I don’t know if some autosave would take care of it…
>>> 
>>> So, however it is done wrt save/apply it should be the same for both “dialogs”.
>>> 
>>> 
>>> Regards,
>>> Bernhard
>>> 
>>>> On 20. Mar 2018, at 18:55, Jon Evans <jon@xxxxxxxxxxxxx <mailto:jon@xxxxxxxxxxxxx>> wrote:
>>>> 
>>>> Yeah I also agree that it should be basically a dialog of eeschema rather than a separate program, so I guess it makes sense to write changes immediately to the in-memory schematic, and mark it as unsaved for the user to consciously hit the save button later if desired.
>>>> 
>>>> -Jon
>>>> 
>>>> On Tue, Mar 20, 2018 at 1:52 PM, Russell Oliver <roliver8143@xxxxxxxxx <mailto:roliver8143@xxxxxxxxx>> wrote:
>>>> I second Bernhard's comments. 
>>>> I think it shouldn't seem like a separate program, just another dialog of eeschema that takes the what you see is what you get approach. 
>>>> As long as the footprint references are valid the schematic should be updated when the dialog is closed, and marked modified if there was a change. 
>>>> Saving the schematic to file is then done through eeschema proper. 
>>>> 
>>>> Russell 
>>>> 
>>>> On Wed, 21 Mar 2018 04:40 Bernhard Stegmaier, <stegmaier@xxxxxxxxxxxxx <mailto:stegmaier@xxxxxxxxxxxxx>> wrote:
>>>> Just my 2 cents…
>>>> I would immediately write back any change in cvpcb to schematic. 
>>>> I never understood why I have to hit the button to do that.
>>>> There is no PCB preview or something like that in cvpcb, so I have to apply all changes anyway to check them directly in the PCB.
>>>> Then, keep the button and save schematic with it.
>>>> 
>>>> 
>>>> Regards,
>>>> Bernhard
>>>> 
>>>>> On 20. Mar 2018, at 18:28, Jon Evans <jon@xxxxxxxxxxxxx <mailto:jon@xxxxxxxxxxxxx>> wrote:
>>>>> 
>>>>> Why don't you like the idea of saving the schematic when you hit the save button? That seems like a reasonable expected behavior to me at least.
>>>>> 
>>>>> (I dislike nag dialogs especially when they seem to have no purpose)
>>>>> 
>>>>> -Jon
>>>>> 
>>>>> On Tue, Mar 20, 2018 at 1:26 PM, Jeff Young <jeff@xxxxxxxxx <mailto:jeff@xxxxxxxxx>> wrote:
>>>>> CvPcb has a Save command (complete with disk icon).  Only it doesn’t do that.  (It simply writes the changes back to eeschema.)
>>>>> 
>>>>> If it were a dialog, I’d say that’s not good.  But this is CvPcb, where you could easily spend an hour making associations (hitting save every few minutes), only to have your machine and/or Kicad go down with all your changes.  That’s borderline horrific.
>>>>> 
>>>>> I don’t like the idea of blind-saving the eeschema document, but I think that would be better than what we have now.
>>>>> 
>>>>> Another idea would be to trigger an auto-save for each CvPcb save.  It’s not ideal because the user may think that there aren’t any changes in their eeschema file and therefore ignore the auto-save warning when restarting.
>>>>> 
>>>>> Yet another idea would be to foist the decision on the user with a “Save your schematic?” dialog every time you save in CvPcb.  That’s pretty hard to love, but with Orson’s new KIDIALOG we could at least have a “don’t ask me again” checkbox.  Maybe that’s not so bad….
>>>>> 
>>>>> Thoughts?
>>>>> _______________________________________________
>>>>> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>>> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>>>> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
>>>>> 
>>>>> _______________________________________________
>>>>> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>>> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>>>> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
>>>> 
>>>> _______________________________________________
>>>> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>>> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>>> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
>>>> 
>>> 
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>>> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
>> 
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
>> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> Unsubscribe : https://launchpad.net/~kicad-developers <https://launchpad.net/~kicad-developers>
> More help   : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>


References