kicad/common
Wayne Stambaugh f1f4473d8b Footprint editor: add save view to PNG file.
Factor out save current canvas view to image file code from symbol editor
code so it can be used anywhere.

Add ability to save to any image format supported by wxBitmapType.  See
https://docs.wxwidgets.org/3.0/gdicmn_8h.html#a90a1eb6d85b5044a99b706fd979f27f5.
Currently only PNG output is implemented.

Please note that there is a minor bug that appears to be due to the
scroll bars which causes unfilled areas on the right and bottom edges
of the image.  This always existed in the save symbol editor view
image but it was not as noticeable because by default the background
color is white.  It is very noticeable in the footprint editor with
a black background.

The usual smattering of coding policy and comment fixes.

Fixes lp:1802127

https://bugs.launchpad.net/kicad/+bug/1802127
2018-11-09 08:32:36 -05:00
..
dialog_about Add initial support for Phoenix (new wxPython binding) 2018-10-26 13:21:11 +02:00
dialogs Added a comment for close event handlers in DIALOG_PRINT_GENERIC 2018-11-07 09:31:40 +01:00
gal Fix rounding in COLOR4D::ToColour 2018-11-08 14:40:42 -05:00
geometry Add line style drawing. 2018-10-09 11:08:56 +01:00
kicad_curl Remove useless includes and more fixes to avoid including curl.h in files, when not mandatory. 2017-09-05 08:07:31 +02:00
legacy_gal Footprint editor: add save view to PNG file. 2018-11-09 08:32:36 -05:00
legacy_wx Footprint editor: add save view to PNG file. 2018-11-09 08:32:36 -05:00
libeval Improve robustness of numeric evaluation. 2018-10-08 12:59:40 +01:00
math Remove superflous includes. 2015-07-31 09:50:47 -04:00
page_layout eeschema-gal: factor out EDA_DRAW_PANEL from BITMAP_BASE, remove some unnecessary includes of class_drawpanel.h 2018-10-09 11:08:52 +01:00
plotters Add line style drawing. 2018-10-09 11:08:56 +01:00
preview_items ARC_ASSIST: Fix return type in bool check 2018-10-09 05:37:48 -07:00
swig Fix conversation of Python 3 str -> wxString 2018-10-19 09:59:06 +02:00
system Switched coroutine library from Boost libcotext to custom libcontext. 2017-03-07 11:45:29 -05:00
tool Fix bitmap scale in printouts 2018-10-31 19:17:30 +01:00
view Don't set the viewport when switching screens. 2018-11-04 19:17:53 +00:00
widgets Don't put up error dialogs after a Cancel of a dialog. 2018-10-30 23:13:32 +00:00
CMakeLists.txt Include directories are implied by legacy_gal linkage 2018-11-08 07:52:36 -05:00
base_screen.cpp Replace log debugging output with tracing. 2018-10-17 15:03:33 -04:00
base_struct.cpp eeschema-gal: factor out EDA_DRAW_PANEL from BITMAP_BASE, remove some unnecessary includes of class_drawpanel.h 2018-10-09 11:08:52 +01:00
base_units.cpp Attempt to fix reading dimension units from file. 2018-07-26 21:27:49 +01:00
basic_gal.cpp DrawGraphicText: remove a static variable, and replace it (when needed) by a new parameter in argument list. 2018-04-07 19:57:26 +02:00
bezier_curves.cpp DXF import: add import of DXF splines that are converted to Bezier curves. 2018-07-22 18:39:47 +02:00
bin_mod.cpp Allow updating of file history size on the fly. 2018-08-21 10:34:41 +01:00
bitmap.cpp Footprint editor: add save view to PNG file. 2018-11-09 08:32:36 -05:00
bitmap_base.cpp eeschema-gal: factor out EDA_DRAW_PANEL from BITMAP_BASE, remove some unnecessary includes of class_drawpanel.h 2018-10-09 11:08:52 +01:00
board_printout.cpp Removed default line width setting from the printing dialog 2018-10-31 19:17:30 +01:00
build_version.cpp Version string improvements. 2016-11-25 09:09:10 -05:00
colors.cpp Try to fix a compil issue on OSX (no viable conversion from 'const wxString' to 'const wxChar *', in colors.cpp) 2016-05-17 09:10:15 +02:00
colors_design_settings.cpp Honour ModEdit layer colors in browser and previews. 2018-09-18 19:14:35 +01:00
commit.cpp Fix issue with prev d83cff63f 2018-06-27 16:40:57 -07:00
common.cpp Kicad, Windows specific: disable a overzealous wxWidgets assert when reading a file. 2018-10-27 19:59:18 +02:00
config_params.cpp Implementation of ERC markers. 2018-10-09 11:08:55 +01:00
confirm.cpp Make ModEdit and LibEdit library tree actions more consistent. 2018-10-03 22:46:41 +01:00
convert_basic_shapes_to_polygon.cpp Fix a few minor Coverity warnings 2018-02-15 10:16:17 +01:00
dialog_shim.cpp Generalize OSX &Cancel fix to work for other languages. 2018-08-01 10:56:45 +01:00
displlst.cpp Move symbol management to a standard Save As... model. 2018-07-25 14:41:20 +01:00
dlist.cpp Fixed an assert in DHEAD::append() 2018-05-11 10:23:40 +02:00
draw_graphic_text.cpp eeschema-gal: factor out EDA_DRAW_PANEL from BITMAP_BASE, remove some unnecessary includes of class_drawpanel.h 2018-10-09 11:08:52 +01:00
draw_panel_gal.cpp Fix bitmap scale in printouts 2018-10-31 19:17:30 +01:00
dsnlexer.cpp Revert "Don't be pedantic about the file format." 2018-03-16 18:11:36 +00:00
eagle_parser.cpp Eeschema: Copy attributes from eagle. 2018-07-31 11:58:01 -07:00
eda_base_frame.cpp Add read-only option for hotkey list, use for list dialog 2018-10-04 07:47:21 -04:00
eda_dde.cpp Keep track of open sockets and dispose of them in d'tor. 2018-04-04 12:02:40 +01:00
eda_doc.cpp More forgiving keyword search. 2018-05-10 12:16:00 +01:00
eda_dockart.cpp eeschema-gal: temporarily disable scrollbar code (causes crashes after Jeff's changes) 2018-10-09 11:08:55 +01:00
eda_pattern_match.cpp Prevent implicit * from wildcard match in footprint 2018-05-01 16:49:20 -07:00
eda_size_ctrl.cpp Clean up units infrastructure after g_UserUnit removal. 2018-07-17 15:12:36 +01:00
eda_text.cpp Fix text size measurement. 2018-10-09 11:08:55 +01:00
env_paths.cpp Fixed normalizeAbsolutePaths() condition 2018-05-25 11:07:51 +02:00
env_vars.cpp Centralise utilities for env variables. 2018-10-03 11:53:10 -04:00
exceptions.cpp Fix quotes in UI messages 2017-12-15 07:33:07 -05:00
executable_names.cpp Move executable name constants to own file 2017-03-23 09:23:45 -04:00
filename_resolver.cpp Fold 3D Search Paths dialog into Configure Paths. 2018-07-17 15:11:01 +01:00
filter_reader.cpp richio.h, class LINE_READER: prefix variable member names by "m_", like in other classes in Kicad. 2017-11-12 18:29:56 +01:00
footprint_filter.cpp Performance enhancements in fp loading, string cmp, etc. 2018-08-01 09:35:46 +01:00
footprint_info.cpp Null pointer check in FOOTPRINT_LIST::GetInstance() 2018-10-12 23:51:31 +02:00
fp_lib_table.cpp Make ModEdit and LibEdit library tree actions more consistent. 2018-10-03 22:46:41 +01:00
gbr_metadata.cpp Gerber job file: fix incorrect GUID. 2018-11-06 08:16:07 +01:00
gestfich.cpp Use quoted file name when opening a PDF file 2018-07-26 12:05:05 +02:00
getrunningmicrosecs.cpp Performance counter rework: More comments, code cleaning, and move GetRunningMicroSecs() prototype from common.h to profile.h. 2017-01-02 13:49:36 +01:00
gl_context_mgr.cpp Dealing with inconsistent wxGLCanvas::IsDisplaySupported() 2018-06-11 12:26:59 +02:00
gr_basic.cpp Add line style drawing. 2018-10-09 11:08:56 +01:00
grid_tricks.cpp Revert code that got accidentally committed. 2018-09-12 19:34:55 +01:00
hash_eda.cpp Hash functions for BOARD_ITEMs 2017-10-24 23:10:40 +02:00
hotkey_store.cpp Add some hotkey store tests 2018-09-28 08:27:57 -04:00
hotkeys_basic.cpp Add read-only option for hotkey list, use for list dialog 2018-10-04 07:47:21 -04:00
html_messagebox.cpp Release mouse before closing HTML_MESSAGE_BOX. 2018-05-21 13:18:41 +01:00
incremental_text_ctrl.cpp Fix unnecessary value parameter detected by clang-tidy. - Replace value parameter by const reference parameter or move-assignement in some cases 2018-01-09 18:55:51 -05:00
kiface_i.cpp Removed old debug output 2017-12-17 18:43:43 +01:00
kiway.cpp Better exception handling and context locking for GAL. 2018-10-12 23:44:49 +01:00
kiway_express.cpp Teach cvpcb about new KIWAY based cross-probing, factor out MAIL_T into mail_type.h 2014-04-22 10:16:19 -05:00
kiway_holder.cpp Switch UNIT_BINDER and DIALOG_SHIM to local units. 2018-07-17 15:09:53 +01:00
kiway_player.cpp Unified preferences dialog framework. 2018-07-17 15:11:17 +01:00
lib_id.cpp Fix LIB_ID illegal character tests. 2018-10-07 09:09:27 -04:00
lib_table.keywords Added "enabled" parameter for LIB_TABLE_ROW 2017-11-21 08:18:06 -05:00
lib_table_base.cpp Treat ${...} and $(...) envvar references uniformly. 2018-05-05 23:40:40 +01:00
lib_tree_model.cpp More performance enhancements. 2018-08-06 13:49:27 +01:00
lib_tree_model.h More performance enhancements. 2018-08-06 13:49:27 +01:00
lib_tree_model_adapter.cpp Highlight only leaf nodes when filtering lib tree. 2018-08-19 17:59:32 +01:00
lib_tree_model_adapter.h More performance enhancements. 2018-08-06 13:49:27 +01:00
lockfile.cpp Move file locking utilities to a separate file 2017-03-23 09:23:45 -04:00
lset.cpp Allow text on margin layer. 2018-11-02 19:55:30 +00:00
marker_base.cpp eeschema-gal: Base refactoring before GALification of the eeschema legacy canvas. 2018-10-09 11:08:52 +01:00
md5_hash.cpp fix minor compil warnings 2017-12-05 18:02:53 +01:00
msgpanel.cpp Remove colours from message text items. 2018-07-17 15:11:40 +01:00
netlist.keywords Fix Bug #1381287 (CvPCB ignores the footprint filter field on aliased components) 2015-01-02 08:52:29 +01:00
newstroke_font.cpp all: new Russian GOST patch - author Konstantin Baranovskiy 2013-03-28 00:38:20 +04:00
observable.cpp Coverity fixes (mostly initializing variables) 2017-02-01 17:31:55 +01:00
origin_viewitem.cpp eeschema-gal: factor out EDA_DRAW_PANEL from BITMAP_BASE, remove some unnecessary includes of class_drawpanel.h 2018-10-09 11:08:52 +01:00
page_info.cpp Fix code after renaming files 2018-01-29 11:37:29 +01:00
painter.cpp Wire m_showPageLimits control up to GAL canvas. 2018-07-17 15:13:29 +01:00
pcb.keywords Revert "Allow 5.0 to read 6.0 files with hole-to-hole clearance settings." 2018-03-16 22:22:15 +00:00
pcb_plot_params.keywords Add Gerber job file writer in Pcbnew, and a basic reader in Gerbview. Currently disabled 2017-08-30 11:04:33 +02:00
pgm_base.cpp Replace log debugging output with tracing. 2018-10-17 15:03:33 -04:00
prependpath.cpp Fix some issues related to the footprint wizard frame: 2015-09-07 12:52:16 +02:00
printout.cpp Removed default line width setting from the printing dialog 2018-10-31 19:17:30 +01:00
project.cpp Revert absolute-path asserts and fix off-by-one bug. 2018-09-15 22:36:09 +01:00
properties.cpp Eeschema: initial schematic I/O plugin. 2016-07-06 05:22:56 -04:00
ptree.cpp Removed all exception specifiers since deprecated. 2017-06-12 13:54:55 -04:00
reporter.cpp Optionally sort reporter messages 2018-05-22 13:55:02 -07:00
richio.cpp Fix compile error on Linux. 2018-08-14 14:57:42 +01:00
search_stack.cpp Replace log debugging output with tracing. 2018-10-17 15:03:33 -04:00
searchhelpfilefullpath.cpp Replace log debugging output with tracing. 2018-10-17 15:03:33 -04:00
selcolor.cpp Clean up file locations and names. 2018-09-22 16:23:13 +01:00
settings.cpp Multiple improvements concerning colors, configuration handling and legacy features in pcbnew: 2017-08-04 16:06:57 +02:00
single_top.cpp Revert absolute-path asserts and fix off-by-one bug. 2018-09-15 22:36:09 +01:00
status_popup.cpp Bring PICKER_TOOL in line with other tools. 2018-08-23 00:58:01 +01:00
streamwrapper.cpp Replace WIN32 preprocessor symbol by the official symbol _WIN32, used almost everywhere 2018-10-20 09:22:24 +02:00
string.cpp Turn off escaping names for now. 2018-09-27 17:21:49 +01:00
strtok_r.c Add strtok_r.c 2013-12-10 17:52:51 -06:00
systemdirsappend.cpp Minor fixes: remove a few useless includes and move a few others to the right file. Remove a few coverity warnings about not initialized members. 2015-05-15 14:49:11 +02:00
text_utils.cpp change UTF8& operator+=( wchar_t ch ) to UTF8& operator+=( unsigned ch ), because swig does not like wchar_t. 2017-12-08 17:57:53 +01:00
trace_helpers.cpp Replace log debugging output with tracing. 2018-10-17 15:03:33 -04:00
undo_redo_container.cpp fix code after file renaming 2018-01-31 09:24:02 +01:00
utf8.cpp UTF8: Fix MSVC builds 2018-10-18 11:35:45 -07:00
validators.cpp Fix ENV_VAR_NAME_VALIDATOR typing characters backwards 2018-10-22 15:07:44 +02:00
wildcards_and_files_ext.cpp Fix thread-safety issue with some global wxStrings. 2018-08-04 10:29:17 +01:00
worksheet.cpp eeschema-gal: Base refactoring before GALification of the eeschema legacy canvas. 2018-10-09 11:08:52 +01:00
worksheet_viewitem.cpp pcbnew: Draw title block normally even when the view is flipped 2018-10-31 19:17:30 +01:00
wxdataviewctrl_helpers.cpp Move wxDataViewCtrl manipulators out of dialog_choose_component.cpp 2017-03-30 21:47:14 -04:00
xnode.cpp Removed all exception specifiers since deprecated. 2017-06-12 13:54:55 -04:00