kicad/pcbnew/router
Jon Evans 18037e2f65 Rework bitmap system to load from archived PNGs
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.

Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz

The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.

Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.

Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
..
CMakeLists.txt router: factor out POSTURE_SOLVER to more generic MOUSE_TRAIL_TRACER class 2021-02-25 17:18:23 +01:00
length_tuner_tool.cpp Rework bitmap system to load from archived PNGs 2021-03-11 08:37:35 -05:00
length_tuner_tool.h Move the router tools to a TOOL_MENU context menu 2020-09-24 23:51:34 +01:00
pns_algo_base.cpp router: expose current view area to the router algorithms so that the optimizer could know not to mess with traces/vias not currently visible to the user (wip) 2021-02-25 17:18:23 +01:00
pns_algo_base.h router: expose current view area to the router algorithms so that the optimizer could know not to mess with traces/vias not currently visible to the user (wip) 2021-02-25 17:18:23 +01:00
pns_arc.cpp Repair ARC copy constructor. 2020-11-01 00:10:08 +00:00
pns_arc.h Repair ARC copy constructor. 2020-11-01 00:10:08 +00:00
pns_component_dragger.cpp Implement hole clearance and hole-to-hole clearance in router. 2021-01-01 00:31:36 +00:00
pns_component_dragger.h Component dragger: be more generous about picking up tracks 2020-12-22 22:28:24 -05:00
pns_debug_decorator.h router: debug points now have variable size 2021-02-25 17:18:23 +01:00
pns_diff_pair.cpp Mostly formatting cleanup but a few type-casting cleanups too. 2020-11-24 22:16:41 +00:00
pns_diff_pair.h Enforce hole-to-hole min when placing diffpair vias. 2021-01-05 00:26:49 +00:00
pns_diff_pair_placer.cpp Fix bugs in diffPair hole-to-hole logic and add rule resolution. 2021-02-25 14:23:02 +00:00
pns_diff_pair_placer.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_dp_meander_placer.cpp PNS: First pass at updating meander placers for arcs 2021-01-05 17:57:21 -05:00
pns_dp_meander_placer.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_drag_algo.h Formatting. 2021-01-04 19:19:55 +00:00
pns_dragger.cpp Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_dragger.h Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_index.cpp Implement hole clearance and hole-to-hole clearance in router. 2021-01-01 00:31:36 +00:00
pns_index.h Formatting. 2021-01-04 19:19:55 +00:00
pns_item.cpp Improve feedback when routing in highlight collisions mode. 2021-01-01 17:25:37 +00:00
pns_item.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_itemset.cpp Formatting. 2021-01-04 19:19:55 +00:00
pns_itemset.h Formatting. 2021-01-04 19:19:55 +00:00
pns_joint.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_kicad_iface.cpp Honour pre-defined-size selections for diff pairs. 2021-03-02 12:12:05 +00:00
pns_kicad_iface.h Remember Parent data when routing 2021-02-07 17:08:43 -08:00
pns_layerset.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_line.cpp Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_line.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_line_placer.cpp PNS: new through vias should span all copper layers 2021-03-07 17:58:43 +00:00
pns_line_placer.h Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_link_holder.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_linked_item.h pcbnew: Adding arcs to PNS 2020-02-21 16:11:41 -08:00
pns_logger.cpp router: clearer distinction between LOGGER and DEBUG_DECORATOR classes. 2020-07-22 18:05:54 +02:00
pns_logger.h router: clearer distinction between LOGGER and DEBUG_DECORATOR classes. 2020-07-22 18:05:54 +02:00
pns_meander.cpp Mostly formatting cleanup but a few type-casting cleanups too. 2020-11-24 22:16:41 +00:00
pns_meander.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_meander_placer.cpp PNS: First pass at updating meander placers for arcs 2021-01-05 17:57:21 -05:00
pns_meander_placer.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_meander_placer_base.cpp PNS: First pass at updating meander placers for arcs 2021-01-05 17:57:21 -05:00
pns_meander_placer_base.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_meander_skew_placer.cpp PNS: First pass at updating meander placers for arcs 2021-01-05 17:57:21 -05:00
pns_meander_skew_placer.h Comment-only changes 2020-01-10 16:43:01 -08:00
pns_mouse_trail_tracer.cpp GRID_HELPER: fixed arithmetic issue in segment snap distance check disguised as 'excessive optimization' by the dragger in the router 2021-02-25 17:18:23 +01:00
pns_mouse_trail_tracer.h GRID_HELPER: fixed arithmetic issue in segment snap distance check disguised as 'excessive optimization' by the dragger in the router 2021-02-25 17:18:23 +01:00
pns_node.cpp router: replace large stack variables with std::array 2021-02-25 17:18:23 +01:00
pns_node.h Fix arg type of NODE::followLine 2021-02-20 11:58:55 -05:00
pns_optimizer.cpp Coverity fixes for issues 314755, 316287, 324536, 324539, and 324539. 2021-03-02 08:10:37 -05:00
pns_optimizer.h Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_placement_algo.h router: backspace key to undo last fixed segment(s) 2020-02-27 22:02:56 +01:00
pns_router.cpp Coverity fixes for issues 314755, 316287, 324536, 324539, and 324539. 2021-03-02 08:10:37 -05:00
pns_router.h router: expose current view area to the router algorithms so that the optimizer could know not to mess with traces/vias not currently visible to the user (wip) 2021-02-25 17:18:23 +01:00
pns_routing_settings.cpp PNS: A new approach to arc placement 2020-12-30 18:23:24 -05:00
pns_routing_settings.h Fix the last of broken Doxygen comment specifiers. 2021-01-27 17:39:44 -05:00
pns_segment.h Repair ARC copy constructor. 2020-11-01 00:10:08 +00:00
pns_shove.cpp Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_shove.h Commenting and naming for clarity. 2021-01-05 16:54:52 +00:00
pns_sizes_settings.cpp Honour pre-defined-size selections for diff pairs. 2021-03-02 12:12:05 +00:00
pns_sizes_settings.h Fix whitespace errors 2021-02-25 17:18:23 +01:00
pns_solid.cpp Cleanup (and a minor performance improvement). 2021-01-04 22:32:29 +00:00
pns_solid.h Initialize variables properly 2021-01-18 18:35:10 +00:00
pns_tool_base.cpp Remove transitive inclusion of bitmaps.h 2021-03-07 16:08:57 -05:00
pns_tool_base.h Push shared parts of GRID_HELPERs into common. 2021-01-16 23:18:10 +00:00
pns_topology.cpp Change gears on no-connect net generation. See bug rpt. 2020-12-04 18:25:48 +00:00
pns_topology.h MINOPTMAX: added OptThenMin() method as syntax sugar 2020-10-09 00:01:26 +02:00
pns_tune_status_popup.cpp Push KIWAY_HOLDER down a level so we can move a bunch of stuff that doesn't belong there out. 2019-06-10 23:46:00 +01:00
pns_tune_status_popup.h Pcbnew: fix crash on exit after using the track length tool. 2020-02-22 10:34:11 +01:00
pns_utils.cpp Implement hole clearance and hole-to-hole clearance in router. 2021-01-01 00:31:36 +00:00
pns_utils.h pcbnew: Adding arcs to PNS 2020-02-21 16:11:41 -08:00
pns_via.cpp Implement hole clearance and hole-to-hole clearance in router. 2021-01-01 00:31:36 +00:00
pns_via.h Formatting. 2021-01-02 18:38:17 +00:00
pns_walkaround.cpp router: use new LINE::Walkaround in the walkaround algo 2021-02-25 17:18:23 +01:00
pns_walkaround.h A few Coverity fixes. 2020-03-30 09:50:26 +02:00
range.h
ranged_num.h
router_preview_item.cpp router: correctly handle line width in PREVIEW_ITEMs 2021-02-25 17:18:23 +01:00
router_preview_item.h Make sure TH pads get collision layer highlighted. 2021-01-03 21:16:09 +00:00
router_tool.cpp Rework bitmap system to load from archived PNGs 2021-03-11 08:37:35 -05:00
router_tool.h router: feature to save debug event log & board dump for easier recreation of router bugs and misbehaviours 2021-02-25 17:18:23 +01:00
time_limit.cpp Move PNS router code into namespace PNS 2016-09-06 16:06:06 +02:00
time_limit.h Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00