Commit Graph

13 Commits

Author SHA1 Message Date
Salvador E. Tropea 4a3e7faace Added a new filter used to rotate footprints.
Used to generate position files for some manufacturers like JLC.
Also in this patch:
- Now position files are naturally sorted (R10 after R9, not after R1)
- Position files in CSV format quotes only the columns that could
  contain an space. Just like KiCad does.
- Fixed: Generic filter `include_only` option worked only when debug
  enabled.
2020-12-28 18:26:27 -03:00
Salvador E. Tropea 007fc36d1e Fixed the components fields reset mechanism.
My previous approach was incomplete.
2020-12-23 18:47:11 -03:00
Salvador E. Tropea 204ad189de Changed how variant field renamer is implemented.
- Now is a separated filter type (`var_rename`).
- Now all variants support a `pre_transform` filter list.
- An internal `_var_rename` filter is defined (default).
2020-12-23 10:19:23 -03:00
Salvador E. Tropea b03b56ae5d Added more coherence to the variants/filters.
- Now they behave more coherently across outputs.
- Component status is explicitly reset, so having a variant + filter
  behaves in a more consistent way. Even when this isn't the
  recommended use.
- Virtual components are handled by the exclude filter.
- Moved code to modify the PCB to VariantOptions.
- Added a real virtual component to the tests, not a ridiculous case.
2020-09-08 20:01:16 -03:00
Salvador E. Tropea d719718eca Moved KiBoM default behavior to the KiBoM variant.
So it can be applied to other outputs.
2020-09-05 18:58:26 -03:00
Salvador E. Tropea 1163d28e71 Added "Not " prefix to negation filter names. 2020-09-05 18:56:01 -03:00
Salvador E. Tropea 712d135df5 Fixed: if no filters are applied we must reset the fields.
Added funtions to apply the filters
Moved code from bom.py to out_bom.py
2020-09-02 18:07:38 -03:00
Salvador E. Tropea 76ea47c04f Now the default exclude filter excludes ref == '#*' 2020-09-01 20:30:34 -03:00
Salvador E. Tropea 9ebf18ba11 Added new basic filters.
`!` is always False
`_none` is no filter
2020-09-01 18:48:45 -03:00
Salvador E. Tropea 7882cb0f4f Moved internal filters to the base class.
So they can be used not only for internal BoM purposes.
2020-08-31 20:48:56 -03:00
Salvador E. Tropea 58430d8611 Fixed errors in Not and Multi Filters implementation. 2020-08-30 11:53:21 -03:00
Salvador E. Tropea a1455e0f46 Added more flexibility to filters.
Support for:
- Pass all
- Negated (in addition to its internal option)
- List of filters
2020-08-29 19:32:04 -03:00
Salvador E. Tropea 6af9faf909 Created the base filter class and the generic filter.
Moved all the KiBoM and IBoM filter functionality that was in their
variants to this generic mechanism.
2020-08-29 17:39:56 -03:00