Commit 30e251bf authored by Miguel Angel Ajo's avatar Miguel Angel Ajo

merge 1 with tip

parents 70df1517 28bcad84

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

......@@ -21,6 +21,8 @@ common/pcb_plot_params_keywords.cpp
include/pcb_plot_params_lexer.h
pcbnew/specctra_keywords.cpp
pcbnew/specctra_lexer.h
pcb_calculator/pcb_calculator_datafile_keywords.cpp
pcb_calculator/pcb_calculator_datafile_lexer.h
new/html
new/sch_lib_table_keywords.cpp
new/sch_lib_table_lexer.h
......
......@@ -35,9 +35,9 @@
/* 3D modeling units -> PCB units conversion scale:
* 1 "3D model unit" wings3d = 1 unit = 2.54 mm = 0.1 inch
* 1 "3D model unit" wings3d = 1 unit = 2.54 mm = 0.1 inch = 100 mils
*/
#define UNITS3D_TO_UNITSPCB 1000
#define UNITS3D_TO_UNITSPCB (IU_PER_MILS * 100)
class S3D_MASTER;
......
......@@ -4,6 +4,14 @@ KiCad ChangeLog 2012
Please add newer entries at the top, list the date and your name with
email address.
2012-May-5 UPDATE Jerry Jacobs <jerry@xor-gate.org>
================================================================================
++ common
* Update about dialog to more native size so the notebook is not squeezed
* Increment copyright year to 2012
* Fix mousezoom jumping to center for Mac OS X and other platforms
* Remove lowercase application name because Mac OS X menubar was inconsitent
2012-Mar-11 UPDATE Dick Hollenbeck <dick@softplc.com>
================================================================================
++pcbnew
......
......@@ -278,7 +278,7 @@ add_subdirectory(polygon/kbool/src)
add_subdirectory(potrace)
add_subdirectory(bitmap2component)
add_subdirectory(pcb_calculator)
#add_subdirectory(tools)
add_subdirectory(tools)
#add_subdirectory(new)
......
......@@ -413,6 +413,7 @@ set( BMAPS_MID
pin_to
pin
plot_hpg
plot_pdf
plot_ps
plot
polar_coord
......
/* Do not modify this file, it was automatically generated by the
* PNG2cpp CMake script, using a *.png file as input.
*/
#include <bitmaps.h>
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x04, 0xf5, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xad, 0x96, 0x6d, 0x4c, 0x53,
0x57, 0x18, 0xc7, 0x99, 0x31, 0xc3, 0x39, 0x60, 0xd9, 0x3e, 0xcc, 0x4f, 0xc6, 0xcc, 0x4f, 0xcb,
0x0c, 0x7c, 0x11, 0x26, 0x03, 0x17, 0xb6, 0x25, 0x3a, 0xd1, 0x31, 0x62, 0x06, 0x73, 0x46, 0x64,
0xb0, 0x4c, 0xe7, 0x46, 0x47, 0x41, 0x29, 0xef, 0xb4, 0xbc, 0x96, 0x81, 0x03, 0x9d, 0x10, 0x44,
0x88, 0x56, 0x5e, 0x94, 0xa9, 0x0c, 0x3a, 0x5e, 0x0a, 0x13, 0x10, 0x0b, 0x85, 0x19, 0xc3, 0x5a,
0xa5, 0x50, 0x6a, 0xa1, 0xaf, 0x40, 0xa1, 0xa5, 0x16, 0x0a, 0x05, 0x24, 0x0a, 0xff, 0x9d, 0x7b,
0xa1, 0x8d, 0x82, 0x46, 0xd6, 0xf9, 0x24, 0xbf, 0xf4, 0xf6, 0x9c, 0xdc, 0xff, 0xff, 0x9c, 0xe7,
0x3c, 0xf7, 0xb9, 0xd7, 0x09, 0x80, 0xd3, 0x7a, 0x88, 0x89, 0x8b, 0xd9, 0xd3, 0xf3, 0x4f, 0x8f,
0xe0, 0xd7, 0xfc, 0x9c, 0xa8, 0x5f, 0x72, 0xb3, 0x4e, 0x66, 0x9f, 0xe6, 0xc6, 0x92, 0xdf, 0xc4,
0xce, 0x4e, 0x61, 0xf5, 0x29, 0xd6, 0x29, 0xd6, 0xcb, 0xee, 0x77, 0x5a, 0xaf, 0x11, 0x2b, 0x81,
0x95, 0xd0, 0xd5, 0x2d, 0xba, 0x42, 0xc4, 0xe3, 0x13, 0x53, 0xe2, 0xf3, 0x62, 0x13, 0x62, 0x0b,
0xc8, 0x75, 0x66, 0x75, 0xf5, 0xf5, 0x4b, 0x69, 0x19, 0x69, 0xe7, 0x5f, 0x99, 0x11, 0x27, 0x9d,
0x53, 0xd0, 0x7c, 0x53, 0x70, 0x89, 0x88, 0xa7, 0x1f, 0x0d, 0x0f, 0xcb, 0xff, 0x26, 0xe4, 0x48,
0x7a, 0x26, 0x37, 0xe3, 0x37, 0xde, 0xe5, 0x52, 0x5e, 0x66, 0x36, 0xb7, 0xca, 0x61, 0xa3, 0xd4,
0xd4, 0xd4, 0x4d, 0xb5, 0xfc, 0x1b, 0x0d, 0xed, 0xb7, 0xdb, 0xc4, 0xb7, 0xda, 0xdb, 0xc4, 0x8d,
0x4d, 0x0d, 0x13, 0xad, 0xb7, 0x5a, 0xcc, 0xcd, 0x7f, 0x09, 0x0c, 0x75, 0x0d, 0x75, 0x63, 0x8d,
0x82, 0x7a, 0x0d, 0xc1, 0x44, 0xfe, 0x9b, 0xeb, 0x1b, 0xeb, 0x26, 0x5b, 0xdb, 0x5a, 0xc4, 0x14,
0xfc, 0xfa, 0x1a, 0x51, 0x56, 0x56, 0xd6, 0x96, 0x75, 0x1b, 0x5d, 0x28, 0x39, 0x9f, 0x3f, 0x3b,
0x37, 0xbb, 0x34, 0x3b, 0x6b, 0x85, 0xd5, 0x3a, 0x83, 0x99, 0x99, 0x69, 0x4c, 0xcf, 0x58, 0x60,
0x99, 0x26, 0x58, 0xa6, 0x30, 0x65, 0x99, 0xc4, 0xe4, 0x94, 0x19, 0xe6, 0xc9, 0x87, 0x78, 0x68,
0x26, 0x3c, 0x9c, 0x80, 0x89, 0x30, 0x4d, 0xe6, 0xab, 0xae, 0x55, 0xb6, 0xbe, 0xd4, 0x88, 0xa4,
0xe6, 0x35, 0xc2, 0xa6, 0x0b, 0xa5, 0xc5, 0xbc, 0xb9, 0xb9, 0x59, 0xfa, 0xe6, 0x89, 0x09, 0x03,
0x0c, 0xc6, 0x71, 0x8c, 0x1b, 0xc6, 0x30, 0x36, 0xae, 0x87, 0x7e, 0x6c, 0x04, 0xa3, 0xfa, 0x61,
0x0c, 0x8f, 0xea, 0xa0, 0x1b, 0xd1, 0x42, 0xab, 0x53, 0x43, 0xa3, 0x55, 0x41, 0xad, 0x51, 0x62,
0xc2, 0x64, 0x44, 0x0d, 0xff, 0x86, 0x88, 0xd2, 0x20, 0x6c, 0x78, 0xae, 0x11, 0x35, 0x71, 0xb5,
0xaa, 0xa2, 0x43, 0xa1, 0x90, 0x5b, 0xce, 0x16, 0x9c, 0x7d, 0x62, 0x30, 0x8c, 0x43, 0xa9, 0x1a,
0xc2, 0x90, 0x52, 0x01, 0xc5, 0xd0, 0x03, 0x3c, 0x50, 0xc8, 0x21, 0x7f, 0x30, 0x80, 0x01, 0xb9,
0x0c, 0xb2, 0x81, 0x7e, 0xc8, 0x64, 0x7d, 0xe8, 0x93, 0x49, 0x21, 0xed, 0xbf, 0x8f, 0x5e, 0xe9,
0x3d, 0xdc, 0xef, 0x95, 0x40, 0xa5, 0x56, 0xe2, 0xd2, 0xe5, 0x8b, 0x8b, 0x7d, 0xfd, 0x52, 0x0b,
0xff, 0xcf, 0x9a, 0x7e, 0xa2, 0xf9, 0xe6, 0x1a, 0xa3, 0x8b, 0xbc, 0xd2, 0xc2, 0xa9, 0xa9, 0xc9,
0x27, 0x46, 0xb2, 0xfa, 0xef, 0x4e, 0x1c, 0x47, 0x54, 0x4c, 0x0c, 0x58, 0x09, 0x09, 0x88, 0xa5,
0x48, 0xa4, 0x48, 0x44, 0x9c, 0x8d, 0xa4, 0x24, 0x9a, 0x78, 0x1b, 0xc9, 0xc9, 0x48, 0x48, 0x49,
0x26, 0xd7, 0xc9, 0x88, 0x60, 0x46, 0xa2, 0xab, 0xbb, 0x9b, 0x4e, 0x39, 0x59, 0x78, 0xcb, 0x33,
0x46, 0xe4, 0xf9, 0x70, 0x1f, 0x1a, 0x52, 0x58, 0x2c, 0x24, 0xf7, 0x54, 0x8a, 0xc2, 0x8f, 0x1d,
0x43, 0x4a, 0x1a, 0x7b, 0x5d, 0xb0, 0xd3, 0x38, 0xcb, 0xa4, 0xb3, 0x41, 0xaa, 0x13, 0x27, 0x18,
0x0c, 0x88, 0xba, 0x44, 0x98, 0x24, 0xe7, 0x67, 0x30, 0x1a, 0x16, 0xce, 0x15, 0x9e, 0x39, 0x6a,
0x37, 0xaa, 0xe5, 0xff, 0x21, 0xa1, 0x56, 0x60, 0x36, 0x9b, 0x68, 0xa3, 0x43, 0x21, 0x21, 0xf8,
0xfe, 0xc7, 0x1f, 0x1c, 0xe2, 0xeb, 0x90, 0x23, 0xb4, 0x11, 0xa5, 0x65, 0xb5, 0x4e, 0x43, 0x28,
0x6c, 0xd7, 0xd0, 0x26, 0xe9, 0x99, 0x1c, 0x57, 0xb9, 0x5c, 0x66, 0x36, 0x91, 0x83, 0xa4, 0x0e,
0x7e, 0x54, 0x3f, 0x82, 0x80, 0xaf, 0x82, 0x70, 0xe0, 0xe0, 0x41, 0x87, 0xf8, 0x3c, 0x20, 0x00,
0xc2, 0x8e, 0x0e, 0x5a, 0x8b, 0x62, 0x78, 0x44, 0xf7, 0x68, 0xf9, 0x99, 0x49, 0x4f, 0xf1, 0xd6,
0x68, 0xd5, 0x0b, 0xc3, 0xa3, 0x1a, 0x50, 0xa8, 0x34, 0x83, 0xf8, 0x74, 0xef, 0x3e, 0xec, 0xf4,
0xf6, 0x71, 0x08, 0xef, 0x8f, 0xfd, 0xd0, 0xda, 0xde, 0x0a, 0x9b, 0xde, 0xb8, 0x41, 0xbf, 0x9c,
0xb6, 0x9c, 0xd3, 0xdc, 0x13, 0x54, 0xa9, 0x0e, 0xaa, 0xe4, 0x76, 0xf2, 0xce, 0x9d, 0x41, 0x3c,
0x3b, 0xd9, 0x21, 0xd2, 0xb2, 0xb3, 0x30, 0xa0, 0xe8, 0x83, 0xa4, 0xef, 0x6f, 0xdc, 0x95, 0xdc,
0x86, 0xd1, 0x64, 0xb0, 0x97, 0x35, 0x53, 0xa5, 0x55, 0x42, 0x3a, 0x20, 0x79, 0xa5, 0x88, 0xfb,
0x85, 0xb8, 0x2b, 0x6d, 0xc1, 0xc8, 0x98, 0x6e, 0xd9, 0x28, 0x2b, 0x3b, 0x83, 0xa9, 0x1b, 0xd1,
0x40, 0xad, 0x1b, 0xa2, 0x91, 0x29, 0xa4, 0x68, 0x6e, 0x69, 0x44, 0xd3, 0xcd, 0x06, 0x87, 0x91,
0xf4, 0xf6, 0x40, 0x33, 0xac, 0x84, 0x76, 0x58, 0x45, 0x76, 0x34, 0x8e, 0x95, 0x62, 0x48, 0xfd,
0x8c, 0xc1, 0x8c, 0x98, 0x8a, 0x8c, 0x8e, 0xb4, 0x32, 0x4f, 0x32, 0x67, 0x23, 0xa3, 0x19, 0x8b,
0xe5, 0x95, 0x65, 0xb8, 0x76, 0xfd, 0x0a, 0xae, 0xfe, 0x5e, 0xfe, 0x9f, 0xe1, 0xd7, 0xd5, 0xe2,
0xa7, 0x9f, 0x8f, 0x2f, 0x45, 0x9f, 0x8a, 0x9a, 0xa3, 0x34, 0x19, 0x91, 0x11, 0x56, 0x7b, 0x79,
0xef, 0xf5, 0xdf, 0x77, 0xef, 0x40, 0x60, 0x00, 0xbe, 0x0d, 0x0f, 0xa3, 0x3b, 0x00, 0x79, 0xa0,
0xe8, 0xfe, 0xe6, 0x08, 0x56, 0xab, 0x15, 0xd9, 0x39, 0x19, 0x08, 0x3a, 0x14, 0x0c, 0xff, 0x80,
0x03, 0x84, 0x2f, 0xd4, 0x76, 0xa3, 0x9d, 0x1f, 0xf9, 0xd4, 0x7b, 0xf9, 0xee, 0x5e, 0xfc, 0xc0,
0xdd, 0x1d, 0x4c, 0x26, 0x13, 0x51, 0x51, 0x51, 0x60, 0xb3, 0xd9, 0xe8, 0xed, 0xed, 0x05, 0x15,
0x6d, 0x6d, 0x6d, 0xf6, 0xf1, 0x24, 0xd2, 0x09, 0x9a, 0x9a, 0x9a, 0x60, 0x0b, 0xdb, 0xdc, 0xd3,
0x94, 0x57, 0xf0, 0xb0, 0x3f, 0xf0, 0x4b, 0x78, 0xf9, 0xec, 0x86, 0xa7, 0x8f, 0xaf, 0xd8, 0x6e,
0xb4, 0x63, 0xc7, 0x27, 0x2e, 0xee, 0x9e, 0xbb, 0x22, 0x36, 0x6f, 0xde, 0xfc, 0x48, 0x20, 0x10,
0xd0, 0x42, 0x3c, 0x1e, 0x0f, 0x5b, 0xb7, 0x6e, 0x85, 0x56, 0xab, 0x45, 0x6e, 0x6e, 0x2e, 0x8e,
0x91, 0x6e, 0x41, 0x8d, 0x57, 0x55, 0x55, 0xc1, 0xd7, 0xd7, 0x97, 0x1e, 0xa3, 0x22, 0x27, 0x27,
0x07, 0x61, 0x61, 0x61, 0xf4, 0x9c, 0x8d, 0xdb, 0x1d, 0xb7, 0x10, 0x97, 0x1c, 0xd3, 0xef, 0xe1,
0xf9, 0x21, 0xcb, 0xc3, 0xc3, 0xe7, 0xdd, 0x67, 0x7a, 0x5d, 0x74, 0x74, 0xf4, 0x1b, 0x6e, 0x6f,
0xb9, 0x3d, 0x5e, 0x5c, 0x5c, 0xb4, 0xaf, 0x36, 0x28, 0x28, 0x08, 0xcd, 0xcd, 0xcd, 0xb4, 0x68,
0x5e, 0x5e, 0x9e, 0x7d, 0x9c, 0x4a, 0x8f, 0x9b, 0x9b, 0x1b, 0x16, 0x16, 0x16, 0x68, 0x23, 0x2e,
0x97, 0x8b, 0xa7, 0x63, 0x50, 0x29, 0x47, 0x45, 0x65, 0x99, 0x86, 0x11, 0xc3, 0x78, 0x6f, 0x4d,
0x53, 0x0d, 0x0e, 0x0e, 0x76, 0x21, 0xf1, 0xb8, 0xab, 0xab, 0x0b, 0xdd, 0xa4, 0x29, 0x96, 0x94,
0x94, 0x60, 0xdb, 0xb6, 0x6d, 0x98, 0x9f, 0x9f, 0x5f, 0x63, 0x44, 0x85, 0xa7, 0xa7, 0x27, 0xe9,
0xe0, 0x32, 0xda, 0xc8, 0xcf, 0xcf, 0x0f, 0x71, 0x71, 0x71, 0x34, 0x65, 0x65, 0x65, 0x24, 0x9d,
0x2d, 0x26, 0x4e, 0x6a, 0x8a, 0xfa, 0x70, 0xd8, 0xe1, 0xf7, 0x9f, 0xfb, 0x3e, 0xda, 0xb8, 0x71,
0xa3, 0x21, 0x34, 0x34, 0x14, 0xe1, 0xe1, 0xe1, 0x28, 0x2e, 0x2e, 0x86, 0x5e, 0xaf, 0xa7, 0x45,
0x9f, 0x67, 0xe4, 0xe5, 0xe5, 0x05, 0xb9, 0x5c, 0xbe, 0x26, 0x75, 0x62, 0xb1, 0x18, 0x12, 0x49,
0x4f, 0xa0, 0xbf, 0xbf, 0xbf, 0xb3, 0xfd, 0x7d, 0x44, 0xc2, 0x99, 0xe0, 0x4a, 0x78, 0x87, 0xb0,
0x85, 0x18, 0x4d, 0x3c, 0x9d, 0x3a, 0x5b, 0xac, 0x36, 0x32, 0x1a, 0x8d, 0xf4, 0xf9, 0xbd, 0x28,
0x75, 0x42, 0xa1, 0x70, 0xff, 0x8a, 0xa6, 0xeb, 0x8a, 0x87, 0xd3, 0x06, 0xc2, 0xeb, 0x04, 0x17,
0xc2, 0xdb, 0xc4, 0xc8, 0xf8, 0x22, 0xa3, 0x10, 0xd2, 0xd1, 0xa9, 0x42, 0x28, 0x2a, 0x2a, 0xa2,
0x77, 0x53, 0x58, 0x58, 0x68, 0x2f, 0x86, 0xd5, 0x46, 0x64, 0x57, 0x7b, 0x56, 0x34, 0x9d, 0x69,
0x8f, 0xd5, 0xa9, 0xdb, 0xbe, 0x7d, 0x7b, 0xe6, 0xd2, 0xd2, 0xd2, 0x1a, 0x23, 0xea, 0xdc, 0x38,
0x1c, 0x0e, 0x0d, 0xb5, 0xb3, 0x3b, 0x77, 0xee, 0xd8, 0xe7, 0x44, 0x22, 0x11, 0x3a, 0x3b, 0x3b,
0x57, 0xdf, 0xe2, 0xed, 0xd0, 0xe7, 0xd6, 0xff, 0xe5, 0x5f, 0x87, 0x46, 0x7a, 0x2c, 0x77, 0x09,
0x78, 0x4a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE plot_pdf_xpm[1] = {{ png, sizeof( png ), "plot_pdf_xpm" }};
//EOF
This diff is collapsed.
......@@ -35,6 +35,7 @@ set(COMMON_SRCS
build_version.cpp
class_bitmap_base.cpp
class_colors_design_settings.cpp
class_layer_box_selector.cpp
class_marker_base.cpp
class_plotter.cpp
class_undoredo_container.cpp
......@@ -42,6 +43,7 @@ set(COMMON_SRCS
common_plot_functions.cpp
common_plotHPGL_functions.cpp
common_plotPS_functions.cpp
common_plotPDF_functions.cpp
common_plotGERBER_functions.cpp
common_plotDXF_functions.cpp
confirm.cpp
......@@ -87,7 +89,6 @@ set(PCB_COMMON_SRCS
class_page_info.cpp
pcbcommon.cpp
footprint_info.cpp
class_layer_box_selector.cpp
../pcbnew/basepcbframe.cpp
../pcbnew/class_board.cpp
../pcbnew/class_board_connected_item.cpp
......@@ -116,6 +117,7 @@ set(PCB_COMMON_SRCS
../pcbnew/sel_layer.cpp
../pcbnew/pcb_plot_params.cpp
../pcbnew/io_mgr.cpp
../pcbnew/eagle_plugin.cpp
../pcbnew/legacy_plugin.cpp
../pcbnew/kicad_plugin.cpp
pcb_plot_params_keywords.cpp
......
......@@ -35,17 +35,13 @@
#include <id.h>
#include <base_units.h>
#define CURSOR_SIZE 12 /// size of the cross cursor.
BASE_SCREEN::BASE_SCREEN( KICAD_T aType ) :
EDA_ITEM( aType )
{
m_UndoRedoCountMax = 10; // undo/Redo command Max depth, 10 is a reasonable value
m_FirstRedraw = true;
m_ScreenNumber = 1;
m_NumberOfScreen = 1; // Hierarchy: Root: ScreenNumber = 1
m_NumberOfScreens = 1; // Hierarchy: Root: ScreenNumber = 1
m_Zoom = 32.0;
m_Grid.m_Size = wxRealPoint( 50, 50 ); // Default grid size
m_Grid.m_Id = ID_POPUP_GRID_LEVEL_50;
......@@ -98,16 +94,8 @@ double BASE_SCREEN::GetScalingFactor() const
void BASE_SCREEN::SetScalingFactor( double aScale )
{
double zoom = aScale;
// Limit zoom to max and min allowed values:
if( zoom < m_ZoomList[0] )
zoom = m_ZoomList[0];
int idxmax = m_ZoomList.GetCount() - 1;
if( zoom > m_ZoomList[idxmax] )
zoom = m_ZoomList[idxmax];
double zoom = Clamp( GetMinAllowedZoom(), aScale, GetMaxAllowedZoom() );
SetZoom( zoom );
}
......@@ -115,38 +103,30 @@ void BASE_SCREEN::SetScalingFactor( double aScale )
bool BASE_SCREEN::SetFirstZoom()
{
if( m_ZoomList.IsEmpty() )
{
if( m_Zoom != 1.0 )
{
SetZoom( 1.0 );
return true;
}
}
else if( m_Zoom != m_ZoomList[0] )
{
SetZoom( m_ZoomList[0] );
return true;
}
return false;
return SetZoom( GetMinAllowedZoom() );
}
double BASE_SCREEN::GetZoom() const
bool BASE_SCREEN::SetLastZoom()
{
return m_Zoom;
return SetZoom( GetMaxAllowedZoom() );
}
bool BASE_SCREEN::SetZoom( double coeff )
bool BASE_SCREEN::SetZoom( double iu_per_du )
{
if( coeff == m_Zoom )
if( iu_per_du == m_Zoom )
return false;
wxLogDebug( "Zoom:%.16g 1/Zoom:%.16g", iu_per_du, 1/iu_per_du );
if( iu_per_du < GetMinAllowedZoom() )
return false;
wxLogDebug( "Zoom:%16g 1/Zoom:%16g", coeff, 1/coeff );
if( iu_per_du > GetMaxAllowedZoom() )
return false;
m_Zoom = coeff;
m_Zoom = iu_per_du;
return true;
}
......@@ -154,10 +134,7 @@ bool BASE_SCREEN::SetZoom( double coeff )
bool BASE_SCREEN::SetNextZoom()
{
if( m_ZoomList.IsEmpty() || m_Zoom >= m_ZoomList.Last() )
return false;
for( unsigned i = 0; i < m_ZoomList.GetCount(); i++ )
for( unsigned i=0; i < m_ZoomList.size(); ++i )
{
if( m_Zoom < m_ZoomList[i] )
{
......@@ -172,10 +149,7 @@ bool BASE_SCREEN::SetNextZoom()
bool BASE_SCREEN::SetPreviousZoom()
{
if( m_ZoomList.IsEmpty() || m_Zoom <= m_ZoomList[0] )
return false;
for( unsigned i = m_ZoomList.GetCount(); i != 0; i-- )
for( unsigned i = m_ZoomList.size(); i != 0; --i )
{
if( m_Zoom > m_ZoomList[i - 1] )
{
......@@ -188,15 +162,6 @@ bool BASE_SCREEN::SetPreviousZoom()
}
bool BASE_SCREEN::SetLastZoom()
{
if( m_ZoomList.IsEmpty() || m_Zoom == m_ZoomList.Last() )
return false;
return SetZoom( m_ZoomList.Last() );
}
void BASE_SCREEN::SetGridList( GRIDS& gridlist )
{
if( !m_grids.empty() )
......@@ -320,31 +285,8 @@ GRID_TYPE& BASE_SCREEN::GetGrid( size_t aIndex )
}
GRID_TYPE BASE_SCREEN::GetGrid()
{
return m_Grid;
}
const wxPoint& BASE_SCREEN::GetGridOrigin()
{
return m_GridOrigin;
}
wxRealPoint BASE_SCREEN::GetGridSize()
{
return m_Grid.m_Size;
}
int BASE_SCREEN::GetGridId()
{
return m_Grid.m_Id;
}
wxPoint BASE_SCREEN::GetNearestGridPosition( const wxPoint& aPosition, wxRealPoint* aGridSize )
wxPoint BASE_SCREEN::GetNearestGridPosition( const wxPoint& aPosition,
wxRealPoint* aGridSize ) const
{
wxPoint pt;
wxRealPoint gridSize;
......@@ -368,7 +310,7 @@ wxPoint BASE_SCREEN::GetNearestGridPosition( const wxPoint& aPosition, wxRealPoi
}
wxPoint BASE_SCREEN::GetCursorPosition( bool aOnGrid, wxRealPoint* aGridSize )
wxPoint BASE_SCREEN::GetCursorPosition( bool aOnGrid, wxRealPoint* aGridSize ) const
{
if( aOnGrid )
return GetNearestGridPosition( m_crossHairPosition, aGridSize );
......
......@@ -40,7 +40,7 @@
#include <base_units.h>
#if defined( PCBNEW ) || defined( CVPCB ) || defined( EESCHEMA )
#if defined( PCBNEW ) || defined( CVPCB ) || defined( EESCHEMA ) || defined( GERBVIEW )
#define IU_TO_MM( x ) ( x / IU_PER_MM )
#define IU_TO_IN( x ) ( x / IU_PER_MILS / 1000 )
#define MM_TO_IU( x ) ( x * IU_PER_MM )
......
......@@ -251,18 +251,18 @@ void BITMAP_BASE::Rotate( bool aRotateCCW )
}
void BITMAP_BASE::PlotImage( PLOTTER* aPlotter,
wxPoint aPos,
int aDefaultColor,
int aDefaultPensize )
void BITMAP_BASE::PlotImage( PLOTTER* aPlotter,
const wxPoint& aPos,
EDA_COLOR_T aDefaultColor,
int aDefaultPensize )
{
if( m_image == NULL )
return;
// These 2 lines are useful only fot plotters that cannot plot a bitmap
// and plot arectangle instead of.
aPlotter->set_color( aDefaultColor );
aPlotter->set_current_line_width( aDefaultPensize );
aPlotter->SetColor( aDefaultColor );
aPlotter->SetCurrentLineWidth( aDefaultPensize );
aPlotter->PlotImage( *m_image, aPos, GetScalingFactor() );
}
#include <common.h>
#include <pcbnew.h>
#include <wxPcbStruct.h>
#include <class_board_design_settings.h>
#include <colors_selection.h>
#include <layers_id_colors_and_visibility.h>
#include <bitmaps.h>
#include <hotkeys.h>
#include <help_common_strings.h>
#include <class_board.h>
#include <colors.h>
#include <wx/wx.h>
#include <wx/ownerdrw.h>
#include <wx/menuitem.h>
#include <wx/bmpcbox.h>
#include <wx/wx.h>
#include <wx/aui/aui.h>
#include <class_layer_box_selector.h>
......@@ -101,79 +95,30 @@ int LAYER_BOX_SELECTOR::SetLayerSelection( int layer )
return -1;
}
// Reload the Layers
void LAYER_BOX_SELECTOR::Resync()
{
PCB_BASE_FRAME* pcbFrame = (PCB_BASE_FRAME*) GetParent()->GetParent();
BOARD* board = pcbFrame->GetBoard();
wxASSERT( board != NULL );
Clear();
static DECLARE_LAYERS_ORDER_LIST( layertranscode );
static DECLARE_LAYERS_HOTKEY( layerhk );
for( int i = 0; i < LAYER_COUNT; i++ )
{
wxBitmap layerbmp( 14, 14 );
wxMemoryDC bmpDC;
wxBrush brush;
wxString layername;
int layerid = i;
if( m_layerorder )
layerid = layertranscode[i];
if( !board->IsLayerEnabled( layerid ) )
continue;
// Prepare Bitmap
bmpDC.SelectObject( layerbmp );
brush.SetColour( MakeColour( board->GetLayerColor( layerid ) ) );
brush.SetStyle( wxSOLID );
bmpDC.SetBrush( brush );
bmpDC.DrawRectangle( 0, 0, layerbmp.GetWidth(), layerbmp.GetHeight() );
bmpDC.SetBrush( *wxTRANSPARENT_BRUSH );
bmpDC.SetPen( *wxBLACK_PEN );
bmpDC.DrawRectangle( 0, 0, layerbmp.GetWidth(), layerbmp.GetHeight() );
layername = board->GetLayerName( layerid );
if( m_layerhotkeys && m_hotkeys != NULL )
layername = AddHotkeyName( layername, m_hotkeys, layerhk[layerid], IS_COMMENT );
Append( layername, layerbmp, (void*) layerid );
}
}
void LAYER_BOX_SELECTOR::ResyncBitmapOnly()
{
PCB_BASE_FRAME* pcbFrame = (PCB_BASE_FRAME*) GetParent()->GetParent();
BOARD* board = pcbFrame->GetBoard();
int elements = GetCount();
for( int i = 0; i < elements; i++ )
{
wxBitmap layerbmp( 14, 14 );
wxMemoryDC bmpDC;
wxBrush brush;
wxString layername;
int layerid = i;
// Prepare Bitmap
bmpDC.SelectObject( layerbmp );
brush.SetColour( MakeColour( board->GetLayerColor( layerid ) ) );
brush.SetStyle( wxSOLID );
bmpDC.SetBrush( brush );
bmpDC.DrawRectangle( 0, 0, layerbmp.GetWidth(), layerbmp.GetHeight() );
bmpDC.SetBrush( *wxTRANSPARENT_BRUSH );
bmpDC.SetPen( *wxBLACK_PEN );
bmpDC.DrawRectangle( 0, 0, layerbmp.GetWidth(), layerbmp.GetHeight() );
SetItemBitmap(i, layerbmp);
wxBitmap layerbmp( 14, 14 );
SetBitmapLayer( layerbmp, i );
}
}
void LAYER_BOX_SELECTOR::SetBitmapLayer( wxBitmap& aLayerbmp, int aLayerIndex )
{
wxMemoryDC bmpDC;
wxBrush brush;
// Prepare Bitmap
bmpDC.SelectObject( aLayerbmp );
brush.SetColour( MakeColour( GetLayerColor( aLayerIndex ) ) );
brush.SetStyle( wxSOLID );
bmpDC.SetBrush( brush );
bmpDC.DrawRectangle( 0, 0, aLayerbmp.GetWidth(), aLayerbmp.GetHeight() );
bmpDC.SetBrush( *wxTRANSPARENT_BRUSH );
bmpDC.SetPen( *wxBLACK_PEN );
bmpDC.DrawRectangle( 0, 0, aLayerbmp.GetWidth(), aLayerbmp.GetHeight() );
}
This diff is collapsed.
......@@ -135,6 +135,21 @@ void SetLocaleTo_Default()
}
wxSize GetTextSize( const wxString& aSingleLine, wxWindow* aWindow )
{
wxCoord width;
wxCoord height;
{
wxClientDC dc( aWindow );
dc.SetFont( aWindow->GetFont() );
dc.GetTextExtent( aSingleLine, &width, &height );
}
return wxSize( width, height );
}
bool EnsureTextCtrlWidth( wxTextCtrl* aCtrl, const wxString* aString )
{
wxWindow* window = aCtrl->GetParent();
......@@ -150,21 +165,13 @@ bool EnsureTextCtrlWidth( wxTextCtrl* aCtrl, const wxString* aString )
aString = &ctrlText;
}
wxCoord width;
wxCoord height;
{
wxClientDC dc( window );
dc.SetFont( aCtrl->GetFont() );
dc.GetTextExtent( *aString, &width, &height );
}
wxSize size = aCtrl->GetSize();
wxSize textz = GetTextSize( *aString, window );
wxSize ctrlz = aCtrl->GetSize();
if( size.GetWidth() < width + 10 )
if( ctrlz.GetWidth() < textz.GetWidth() + 10 )
{
size.SetWidth( width + 10 );
aCtrl->SetSizeHints( size );
ctrlz.SetWidth( textz.GetWidth() + 10 );
aCtrl->SetSizeHints( ctrlz );
return true;
}
......@@ -318,10 +325,10 @@ bool ProcessExecute( const wxString& aCommandLine, int aFlags )
}
unsigned long GetNewTimeStamp()
time_t GetNewTimeStamp()
{
static unsigned long oldTimeStamp;
unsigned long newTimeStamp;
static time_t oldTimeStamp;
time_t newTimeStamp;
newTimeStamp = time( NULL );
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -59,7 +59,7 @@ static void InitKiCadAboutNew( AboutAppInfo& info )
info.SetAppName( wxT( ".: " ) + wxGetApp().GetTitle() + wxT( " :." ) );
/* Copyright information */
info.SetCopyright( wxT( "(C) 1992-2011 KiCad Developers Team" ) );
info.SetCopyright( wxT( "(C) 1992-2012 KiCad Developers Team" ) );
/* KiCad build version */
wxString version;
......@@ -147,8 +147,8 @@ static void InitKiCadAboutNew( AboutAppInfo& info )
HtmlHyperlink( wxT( "https://launchpad.net/kicad" ), _( "Project on Launchpad" ) ) << wxT(
"</li>" );
description << wxT( "<li>" ) <<
HtmlHyperlink( wxT( "http://kicad.sourceforge.net" ),
_( "Wiki on Sourceforge with many information" ) ) << wxT( "</li>" );
HtmlHyperlink( wxT( "http://www.kicad-pcb.org" ),
_( "The new KiCad site" ) ) << wxT( "</li>" );
description << wxT( "<li>" ) <<
HtmlHyperlink( wxT( "http://www.kicadlib.org" ),
_( "Repository with additional component libraries" ) ) << wxT( "</li>" );
......
......@@ -58,7 +58,7 @@ dialog_about_base::dialog_about_base( wxWindow* parent, wxWindowID id, const wxS
bSizer1->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 );
m_auiNotebook = new wxAuiNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxAUI_NB_SCROLL_BUTTONS|wxAUI_NB_TAB_FIXED_WIDTH );
m_auiNotebook->SetMinSize( wxSize( 550,300 ) );
m_auiNotebook->SetMinSize( wxSize( 750,350 ) );
bSizer1->Add( m_auiNotebook, 2, wxEXPAND | wxALL, 5 );
......
......@@ -37,7 +37,7 @@
<property name="minimum_size">-1,-1</property>
<property name="name">dialog_about_base</property>
<property name="pos"></property>
<property name="size">510,434</property>
<property name="size">750,450</property>
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxSTAY_ON_TOP</property>
<property name="subclass"></property>
<property name="title">About...</property>
......@@ -472,7 +472,7 @@
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="maximum_size"></property>
<property name="minimum_size">550,300</property>
<property name="minimum_size">750,350</property>
<property name="name">m_auiNotebook</property>
<property name="permission">protected</property>
<property name="pos"></property>
......
......@@ -53,7 +53,7 @@ class dialog_about_base : public wxDialog
public:
dialog_about_base( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About..."), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 510,434 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxSTAY_ON_TOP );
dialog_about_base( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About..."), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 750,350 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxSTAY_ON_TOP );
~dialog_about_base();
};
......
......@@ -40,10 +40,6 @@ DIALOG_SHIM::DIALOG_SHIM( wxWindow* aParent, wxWindowID id, const wxString& titl
#include <base_struct.h> // EDA_RECT
#include <typeinfo>
/// hashtable with key: C string and value: EDA_RECT.
/// The key is the classname of the derived wxformbuilder dialog
WX_DECLARE_HASH_MAP( char*, EDA_RECT, wxStringHash, wxStringEqual, RECT_MAP );
static RECT_MAP class_map;
bool DIALOG_SHIM::Show( bool show )
......
......@@ -132,7 +132,7 @@ void DIALOG_PAGES_SETTINGS::initDialog()
#ifdef EESCHEMA
// Init display value for sheet User size
wxString format = m_TextSheetCount->GetLabel();
msg.Printf( format, m_Screen->m_NumberOfScreen );
msg.Printf( format, m_Screen->m_NumberOfScreens );
m_TextSheetCount->SetLabel( msg );
format = m_TextSheetNumber->GetLabel();
......@@ -644,7 +644,7 @@ void DIALOG_PAGES_SETTINGS::UpdatePageLayoutExample()
GRResetPenAndBrush( ( wxDC* ) &memDC );
m_Parent->TraceWorkSheet( (wxDC*) &memDC, dummySize, pointLeftTop, pointRightBottom,
emptyString, emptyString, m_tb, m_Screen->m_NumberOfScreen,
emptyString, emptyString, m_tb, m_Screen->m_NumberOfScreens,
m_Screen->m_ScreenNumber, 1, appScale, LIGHTGRAY, RED );
memDC.SelectObject( wxNullBitmap );
......
......@@ -44,7 +44,7 @@ EDA_LIST_DIALOG::EDA_LIST_DIALOG( EDA_DRAW_FRAME* aParent, const wxString& aTitl
wxSize( 300, 200 ), 0, NULL,
wxLB_NEEDED_SB | wxLB_SINGLE | wxLB_HSCROLL );
GeneralBoxSizer->Add( m_listBox, 0, wxGROW | wxALL, 5 );
GeneralBoxSizer->Add( m_listBox, 2, wxGROW | wxALL, 5 );
InsertItems( aItemList, 0 );
......@@ -54,7 +54,7 @@ EDA_LIST_DIALOG::EDA_LIST_DIALOG( EDA_DRAW_FRAME* aParent, const wxString& aTitl
wxDefaultPosition, wxSize( -1, 60 ),
wxTE_READONLY | wxTE_MULTILINE );
GeneralBoxSizer->Add( m_messages, 0, wxGROW | wxALL, 5 );
GeneralBoxSizer->Add( m_messages, 1, wxGROW | wxALL, 5 );
}
wxSizer* buttonSizer = CreateButtonSizer( wxOK | wxCANCEL );
......
This diff is collapsed.
......@@ -39,7 +39,7 @@
#include <kicad_device_context.h>
#define CURSOR_SIZE 12 // Cursor size in pixels
static const int CURSOR_SIZE = 12; ///< Cursor size in pixels
#define CLIP_BOX_PADDING 2
......@@ -207,13 +207,13 @@ void EDA_DRAW_PANEL::CrossHairOn( wxDC* DC )
}
int EDA_DRAW_PANEL::GetZoom()
double EDA_DRAW_PANEL::GetZoom()
{
return GetScreen()->GetZoom();
}
void EDA_DRAW_PANEL::SetZoom( int zoom )
void EDA_DRAW_PANEL::SetZoom( double zoom )
{
GetScreen()->SetZoom( zoom );
}
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment