← Back to team overview

kicad-developers team mailing list archive

Re: Unfolding a bus....

 

Looks good on my end!

-Jon

On Sun, May 5, 2019 at 2:55 PM Jeff Young <jeff@xxxxxxxxx> wrote:

> Hi Jon,
>
> Doing a bus unfold leaves you *completely* in the wire tool state.  I’ve
> fixed that.
>
> The halfway state is produced when you cancel a bus unfold by clicking
> outside the popup menu to dismiss it.  I’ve fixed that too.
>
> Cheers,
> Jeff.
>
>
> On 5 May 2019, at 17:16, Jon Evans <jon@xxxxxxxxxxxxx> wrote:
>
> Thanks a lot, Jeff!
> I gave a try and it seems very good. I found one remaining issue:
>
> When I unfold a bus (using hotkey or context menu) and complete the wire
> by double-clicking, I am left in a weird state.
> I can press ESC or use context menu to exit the wire tool, but the cursor
> remains a crosshair, and I can no longer select or right-click anything (so
> it seems like I am still "halfway" in the wire tool)
> The only way to get out of this state is to enter a tool again (using
> context menu or hotkey, any tool works) and then exit again.
>
> Thanks,
> Jon
>
>
> On Sun, May 5, 2019 at 12:01 PM Jeff Young <jeff@xxxxxxxxx> wrote:
>
>> I’ve pushed fixes for these.
>>
>> Cheers,
>> Jeff.
>>
>> On 5 May 2019, at 00:37, Jeff Young <jeff@xxxxxxxxx> wrote:
>>
>> Hi Jon,
>>
>> I must have overlooked this in my email.  I’ll get these patched up
>> tomorrow.
>>
>> Cheers,
>> Jeff.
>>
>>
>> On 3 May 2019, at 01:31, Jon Evans <jon@xxxxxxxxxxxxx> wrote:
>>
>> Hi Jeff,
>> Thanks for cranking through all these features!  It's quite impressive
>> seeing the progress :-)
>>
>> I gave bus unfolding a try and noticed a few issues:
>>
>> 1) It looks like in your branch, bus unfolding is only possible while
>> already in the "draw bus" tool.  It was originally intended to be something
>> that you could trigger from a selected bus, just like the other immediate
>> commands (move/rotate/etc)
>>
>> 2) When I start unfolding a bus, I get the following assertion when I
>> place the bus label:
>> eeschema/tools/sch_line_drawing_tool.cpp(561): assert "aType ==
>> LAYER_WIRE" failed in doDrawSegments().
>> I think this is because the doDrawSegments() of the "draw bus" tool is
>> still called even after the unfold starts (and another doDrawSegments is
>> running to place the unfolded wires)
>>
>> 3) The keyboard shortcut doesn't seem to do anything anymore, I can only
>> unfold from the context menu.  Does it work for you?
>>
>> Unfortunately I don't have time tonight to look more closely at any of
>> these issues, but I can look at them tomorrow if you don't find them first.
>>
>> I like your implementation of BUS_UNFOLD_MENU to handle the dynamic
>> checks -- this pattern will probably be useful for other things in the
>> future!
>>
>> Best,
>> Jon
>>
>> On Thu, May 2, 2019 at 4:05 PM Jeff Young <jeff@xxxxxxxxx> wrote:
>>
>>> Bits pushed.
>>>
>>> Main parts are now in sch_line_drawing_tool.cpp.  BUS_UNFOLD_MENU starts
>>> on line 96, it’s added to the context menu at line 222, and the commands
>>> are dispatched starting at line 674.
>>>
>>> BTW: there are some synthetic KICAD_T types that can be used for fishing
>>> out sub-types of KICAD_T.  Of interest will be SCH_LINE_LOCATE_BUS_T and
>>> SCH_LINE_LOCATE_WIRE_T.  (There have been similar ones for reference,
>>> value, footprint and datasheet SCH_FIELD_Ts for some time.)
>>>
>>> Cheers,
>>> Jeff.
>>>
>>> On 2 May 2019, at 20:41, Jeff Young <jeff@xxxxxxxxx> wrote:
>>>
>>> (I also got my simple test working by renaming my bus label from
>>> "D0..31" to "D[0..31]”.)
>>>
>>> On 2 May 2019, at 20:39, Jeff Young <jeff@xxxxxxxxx> wrote:
>>>
>>> Ha!  Works right out of the box.
>>>
>>> I’ll push it to origin/eemodern shortly so you can have a look.
>>>
>>> Cheers,
>>> Jeff.
>>>
>>>
>>> On 2 May 2019, at 20:07, Jon Evans <jon@xxxxxxxxxxxxx> wrote:
>>>
>>> Hi Jeff,
>>> You can test unfolding using one of the demo projects that uses buses
>>> (for example: video)
>>>
>>> -Jon
>>>
>>> On Thu, May 2, 2019 at 2:57 PM Jeff Young <jeff@xxxxxxxxx> wrote:
>>>
>>>> Hi Jon,
>>>>
>>>> I’ve moved the bus unfolding menu to the modern toolkit and I’m trying
>>>> to test it.  How do I give a bus connections?  I tried a wire2bus entry
>>>> with a label on the wire, and connecting the wire to an annotated
>>>> component, and giving the bus a label of “D0..D31”, but none of those
>>>> worked.  (Or one of them did but I’ve got a bug somewhere.)
>>>>
>>>> Thanks,
>>>> Jeff.
>>>> _______________________________________________
>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>> More help   : https://help.launchpad.net/ListHelp
>>>>
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>>
>>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
>>
>>
>>
>

References