kicad/pcbnew
Martin Thierer 45b94a4b3e Pcbnew: Fix rotating bitmaps
Fixes rotating bitmaps with "rotate counterclockwise",
"rotate clockwise" and "move exactly" commands.

Only rotation by 0, 90, 180 and 270 degrees is supported
for bitmaps. Other values are rounded to the nearest 90
degree multiple.

There is a different bug that this commit doesn't address,
which is that BITMAP_BASE::Rotate() got its CW/CCW logic
reversed ("m_image->Rotate( false )" should rotate CW, but
does not).

Fixes https://gitlab.com/kicad/code/kicad/issues/14197
2023-03-20 12:36:19 +00:00
..
autorouter Turn on and fix MSVC compliance mode issues 2023-02-12 16:30:37 -05:00
board_stackup_manager PANEL_BOARD_STACKUP: Ensure UI is re-linked to storage when importing 2023-02-10 12:58:04 -05:00
connectivity Check for dirtied items in the cluster 2023-03-13 16:10:39 -07:00
dialogs Adds Teardrops as separate type in Global Deletions dialog. 2023-03-19 20:43:18 +00:00
drc Use standard paradigm for macro scope limiting. 2023-03-19 20:43:18 +00:00
exporters more about step exporter (export more copper graphic objects). 2023-03-06 16:36:37 +01:00
import_gfx Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
microwave Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
navlib
netlist_reader BOARD_NETLIST_UPDATER: add missing count of warnings 2023-03-18 17:54:03 +01:00
plugins Fix build: Add missing header include 2023-03-16 22:07:04 +01:00
python Update dimension units when opening PCBs in CLI. 2023-03-13 20:26:11 +00:00
ratsnest Defenses in depth for ratsnest drawing. 2023-03-14 11:53:16 +00:00
router Minor Coverity and compil warnings fix. 2023-03-15 20:09:04 +01:00
specctra_import_export Fix Coverity warnings. 2023-03-08 11:37:56 +01:00
teardrop Teardrops: fix incorrect shape in some cases. 2023-02-20 09:06:21 +01:00
tools Filter Selected Items... is inclusive, not exclusive. 2023-03-19 20:43:18 +00:00
widgets Fix mode-less dialog issues. 2023-03-13 12:04:01 -04:00
CMakeLists.txt CMake: Modernize Boost import to use imported targets 2023-03-10 16:38:35 +00:00
Doxyfile_python
Doxyfile_xml
action_plugin.cpp
action_plugin.h
array_creator.cpp array_creator: Transform item before adding, modify only the first one. 2022-11-19 04:07:35 +05:00
array_creator.h
array_pad_number_provider.cpp
array_pad_number_provider.h Fix typos in pcbnew sub-directory 2022-06-30 09:39:45 -04:00
board.cpp Check for dirtied items in the cluster 2023-03-13 16:10:39 -07:00
board.h Update dimension units when opening PCBs in CLI. 2023-03-13 20:26:11 +00:00
board_commit.cpp Coverity fixes and code cleaning. 2023-03-02 09:04:47 -05:00
board_commit.h Propagate nets within non-conflicting clusters immediately. 2023-01-23 16:25:29 +00:00
board_connected_item.cpp Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
board_connected_item.h 15% rendering optimization in PCB_TRACK::ViewGetLOD. 2023-01-27 18:37:43 +03:00
board_design_settings.cpp Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
board_item.cpp AllCuMask() and AllTechMask() are static, they do NOT modify "this". 2023-02-03 15:08:31 +00:00
board_item_container.h Fix typos in pcbnew sub-directory 2022-06-30 09:39:45 -04:00
build_BOM_from_board.cpp Schematic: Add CSV export to Symbol Fields Table 2022-05-09 12:02:12 -04:00
cleanup_item.cpp Add pad-recombining to FPEditor's Cleanup Graphics. 2022-09-24 19:34:06 +01:00
cleanup_item.h Add pad-recombining to FPEditor's Cleanup Graphics. 2022-09-24 19:34:06 +01:00
collectors.cpp Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
collectors.h Attempt to fix std::initializer_list lifetime issue. 2022-08-21 20:54:41 +01:00
convert_shape_list_to_polygon.cpp Fixes in build board outlines as polygon and convert_shape_list_to_polygon: 2023-02-28 16:45:03 +01:00
convert_shape_list_to_polygon.h Refactor poly outline generator to handle multiple outlines. 2022-10-14 20:32:04 +01:00
cross-probing.cpp ADDED: schematic/library diff for symbols. 2023-03-09 18:04:52 +00:00
edit.cpp PCB Editor: Add User Background Images 2022-07-14 11:23:23 +00:00
edit_track_width.cpp Move via/track/grid selection widget to wxComboBox 2023-03-09 11:45:44 -08:00
edit_zone_helpers.cpp More safety around ratsnest state. 2022-11-30 13:00:21 +00:00
files.cpp Exercise more caution with user filenames. 2023-03-12 15:52:45 +00:00
footprint.cpp Don't use ViewBBox for zoom-to-fit. 2023-03-13 22:45:37 +00:00
footprint.h ADDED: board/library inspection for footprint differences. 2023-03-06 23:08:59 +00:00
footprint_edit_frame.cpp Move via/track/grid selection widget to wxComboBox 2023-03-09 11:45:44 -08:00
footprint_edit_frame.h Fp editor and Fp viewer: fix missing info on msg panel after loading a fp 2023-01-25 17:47:04 +01:00
footprint_editor_settings.cpp Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
footprint_editor_utils.cpp PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
footprint_info_impl.cpp Catch IO_ERROR thrown in timestamp gen 2022-11-29 14:09:22 -08:00
footprint_info_impl.h ADDED: Threadpool 2022-06-24 22:59:24 +00:00
footprint_libraries_utils.cpp Exercise more caution with user filenames. 2023-03-12 15:52:45 +00:00
footprint_preview_panel.cpp Don't use ViewBBox for zoom-to-fit. 2023-03-13 22:45:37 +00:00
footprint_preview_panel.h Graphical diff for board vs library footprints. 2023-03-10 17:16:40 +00:00
footprint_tree_pane.cpp Footprint Editor: Focus search field when window is first opened 2022-12-20 19:54:02 +00:00
footprint_tree_pane.h Footprint Editor: Focus search field when window is first opened 2022-12-20 19:54:02 +00:00
footprint_viewer_frame.cpp UI: Add Numpad Enter as "Return" equivalent in missing places 2023-03-10 16:25:17 -05:00
footprint_viewer_frame.h Fp editor and Fp viewer: fix missing info on msg panel after loading a fp 2023-01-25 17:47:04 +01:00
footprint_wizard.cpp
footprint_wizard.h
footprint_wizard_frame.cpp Fix static event table derived object definitions. 2023-01-28 14:10:06 -05:00
footprint_wizard_frame.h
footprint_wizard_frame_functions.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
fp_shape.cpp Add support for non-cardianlly-rotated text boxes. 2023-03-02 14:57:48 +00:00
fp_shape.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
fp_text.cpp Hide parent property in footprint editor 2023-02-17 20:40:09 -05:00
fp_text.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
fp_text_grid_table.cpp Fix mode-less dialog issues. 2023-03-13 12:04:01 -04:00
fp_text_grid_table.h Add unit and eval support to WX_GRIDs. 2022-10-11 23:40:58 +01:00
fp_textbox.cpp Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
fp_textbox.h Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
fp_tree_model_adapter.cpp Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
fp_tree_model_adapter.h Add pin/unpin context menu to Symbol Chooser and Footprint Chooser. 2022-09-21 14:45:12 +01:00
fp_tree_synchronizing_adapter.cpp PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
fp_tree_synchronizing_adapter.h PCM: auto reload global libs after dialog is run 2023-02-17 17:24:32 +00:00
generate_footprint_info.cpp Handle updated document description format 2022-04-15 11:17:01 -07:00
generate_footprint_info.h
graphics_cleaner.cpp GRAPHICS_CLEANER: fix bad detection of short Bezier curves that can be cleaned 2022-12-10 18:19:09 +01:00
graphics_cleaner.h Add pad-recombining to FPEditor's Cleanup Graphics. 2022-09-24 19:34:06 +01:00
grid_layer_box_helpers.cpp
grid_layer_box_helpers.h
initpcb.cpp Re-resolve netclasses after assigning netclass to pattern. 2022-11-22 14:54:08 +00:00
invoke_pcb_dialog.h
io_mgr.cpp Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
io_mgr.h Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
kicad_clipboard.cpp Don't leave temp footprints attached to a board. 2023-01-18 00:46:59 +00:00
kicad_clipboard.h Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
load_select_footprint.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
menubar_footprint_editor.cpp Add grid reset to place menubar. 2023-02-11 13:20:35 -05:00
menubar_pcb_editor.cpp Graphical diff for schematic vs library symbols. 2023-03-09 18:04:52 +00:00
netinfo.h Expose shared_ptr to swig 2023-02-25 13:14:55 +00:00
netinfo_item.cpp Fix netnames. 2023-01-27 19:35:41 +03:00
netinfo_list.cpp Coverity fixes and code cleaning. 2023-03-02 09:04:47 -05:00
pad.cpp Remove superfluous Simplify() call 2023-02-22 16:24:26 -08:00
pad.h Special selection mode when in high-contrast with courtyard layer active. 2023-02-11 21:11:07 +00:00
pad_custom_shape_functions.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
pcb_base_edit_frame.cpp Update dimension units when opening PCBs in CLI. 2023-03-13 20:26:11 +00:00
pcb_base_edit_frame.h Enable properties panel in footprint editor 2023-02-17 20:35:56 -05:00
pcb_base_frame.cpp Update dimension units when opening PCBs in CLI. 2023-03-13 20:26:11 +00:00
pcb_bitmap.cpp Pcbnew: Fix rotating bitmaps 2023-03-20 12:36:19 +00:00
pcb_bitmap.h Fix handling of PPI when loading embedded images 2023-02-14 19:42:06 -05:00
pcb_dimension.cpp Pcbnew: fix crash when loading a library with a ft containing a dimension. 2023-03-07 10:09:34 +01:00
pcb_dimension.h Move automatic dimension processing inside PCB_DIMENSION_BASE. 2023-03-05 15:19:06 +00:00
pcb_draw_panel_gal.cpp Locked shadows should not be on overlay 2023-01-27 22:09:42 -05:00
pcb_draw_panel_gal.h
pcb_edit_frame.cpp Fix mode-less dialog issues. 2023-03-13 12:04:01 -04:00
pcb_edit_frame.h Fix mode-less dialog issues. 2023-03-13 12:04:01 -04:00
pcb_expr_evaluator.cpp Add support for unitless values to PCB_EXPR_EVALUATOR. 2022-11-29 14:24:20 +00:00
pcb_expr_evaluator.h Add support for unitless values to PCB_EXPR_EVALUATOR. 2022-11-29 14:24:20 +00:00
pcb_expr_functions.cpp PNS: Safety for evaluating item nets for rules 2023-02-17 19:56:02 -05:00
pcb_group.cpp Special selection mode when in high-contrast with courtyard layer active. 2023-02-11 21:11:07 +00:00
pcb_item_containers.h
pcb_layer_box_selector.cpp Improve HiDPI handling of appearance/layer controls 2023-02-22 09:20:36 -05:00
pcb_layer_box_selector.h
pcb_marker.cpp Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_marker.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_origin_transforms.cpp Remove bad static_cast. 2022-07-24 23:41:41 +01:00
pcb_origin_transforms.h
pcb_painter.cpp Drawing improvements for symbol & footprint diffs. 2023-03-11 12:45:16 +00:00
pcb_painter.h Dim other pads when in pad edit mode. 2023-01-06 11:13:57 +00:00
pcb_plot_params.cpp Avoid duplicating similar options in print and plot headers 2022-11-12 16:02:24 +01:00
pcb_plot_params.h Avoid duplicating similar options in print and plot headers 2022-11-12 16:02:24 +01:00
pcb_plot_params_parser.h
pcb_plot_svg.cpp Fix compile warning 2023-01-25 13:53:13 -08:00
pcb_plot_svg.h Hotglue footprint to svg export 2022-12-13 22:50:15 -05:00
pcb_screen.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
pcb_shape.cpp Fix some PCB_SHAPE properties 2023-02-23 20:23:44 -05:00
pcb_shape.h Add support for non-cardianlly-rotated text boxes. 2023-03-02 14:57:48 +00:00
pcb_target.cpp Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_target.h Rename GetSelectMenuText to GetItemDescription 2023-01-11 22:27:44 -05:00
pcb_text.cpp Add Property Inspector support for dimension objects. 2023-03-04 23:16:46 +00:00
pcb_text.h Add Property Inspector support for dimension objects. 2023-03-04 23:16:46 +00:00
pcb_textbox.cpp Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
pcb_textbox.h Fix rotation/flipping properties for text boxes 2023-03-04 13:11:15 -05:00
pcb_track.cpp Coverity fixes and code cleaning. 2023-03-06 07:12:18 -05:00
pcb_track.h Coverity fixes and code cleaning. 2023-03-06 07:12:18 -05:00
pcb_view.cpp
pcb_view.h
pcbnew.cpp Support canceling initial global library table setup. 2023-03-19 14:30:53 +03:00
pcbnew.h Remove convert_to_biu.h, merge contents to base_units.h 2022-09-16 21:09:28 -04:00
pcbnew.icns
pcbnew_config.cpp Move to requiring explicit action to save project settings 2023-03-04 14:25:07 -05:00
pcbnew_config.h
pcbnew_doc.icns
pcbnew_id.h Footprint viewers: fix regression: re-add automatic zoom option when loading a new footprint 2022-04-18 11:15:14 +02:00
pcbnew_jobs_handler.cpp Step exporter fixes and enhancements: 2023-03-05 12:55:15 +01:00
pcbnew_jobs_handler.h Hotglue footprint to svg export 2022-12-13 22:50:15 -05:00
pcbnew_printout.cpp Commenting and formatting. No functional changes. 2023-03-13 18:29:55 +00:00
pcbnew_printout.h Commenting and formatting. No functional changes. 2023-03-13 18:29:55 +00:00
pcbnew_settings.cpp Disable auto-refill zones 2023-02-22 20:13:55 -05:00
pcbnew_settings.h ADDED: user-specified gap and linewidth for bounding hull creation. 2023-02-12 23:16:45 +00:00
pcbplot.cpp Allow plotting of multiple board layers per plot in Python. 2023-02-14 09:49:20 -05:00
pcbplot.h Property popups for symbols, labels, sheets, and footprints in PDF. 2022-09-06 13:59:52 +01:00
plot_board_layers.cpp Commenting and formatting. No functional changes. 2023-03-13 18:29:55 +00:00
plot_brditems_plotter.cpp Add Property Inspector support for dimension objects. 2023-03-04 23:16:46 +00:00
plotcontroller.h Allow plotting of multiple board layers per plot in Python. 2023-02-14 09:49:20 -05:00
plotprint_opts.h Avoid duplicating similar options in print and plot headers 2022-11-12 16:02:24 +01:00
plugin.cpp Rename PROPERTIES to STRING_UTF8_MAP for clarity 2022-11-06 11:51:52 -05:00
sel_layer.cpp
toolbars_footprint_editor.cpp Move via/track/grid selection widget to wxComboBox 2023-03-09 11:45:44 -08:00
toolbars_footprint_viewer.cpp Move via/track/grid selection widget to wxComboBox 2023-03-09 11:45:44 -08:00
toolbars_pcb_editor.cpp Fix includes. 2023-03-09 23:49:01 +00:00
tracks_cleaner.cpp Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere 2023-02-18 22:57:18 -05:00
tracks_cleaner.h
undo_redo.cpp Clear caches before undo operation. 2022-12-02 10:59:48 +00:00
zone.cpp Improve zone & rule area reporting. 2023-03-17 13:28:29 +00:00
zone.h Special selection mode when in high-contrast with courtyard layer active. 2023-02-11 21:11:07 +00:00
zone_filler.cpp Allow shorting copper zones through negative clearance 2023-02-24 20:36:39 -05:00
zone_filler.h Fix an edge-case in the spoke genration logic for non-cardinal spokes. 2022-10-01 19:31:47 +01:00
zone_settings.cpp Zones: use metric defaults and limits instead of mixed units 2023-02-11 07:39:29 -05:00
zone_settings.h Set new zone priority to unique number 2022-08-24 16:37:57 -07:00
zones.h Zones: use metric defaults and limits instead of mixed units 2023-02-11 07:39:29 -05:00
zones_functions_for_undo_redo.cpp More tightening of group parent lifecycles. 2022-11-16 00:42:38 +00:00
zones_functions_for_undo_redo.h Formatting and a bit of cleanup. 2022-10-21 18:41:39 +01:00