Re: [Kicad-developers] [PATCH 0/4] Use of "virtual" and "override" keywords

2016-07-15 Thread Simon Richter
Hi, On 14.07.2016 16:17, Mark Roszko wrote: > If you put virtual blah() in struct C without override, you can be > creating a new virtual function if the signature does not match and > its completely valid. Right, but that is something we can catch with "override". The reason I like to have

Re: [Kicad-developers] PATCH: OS X copy/close bug fix

2016-07-12 Thread Simon Richter
Hi, On 13.07.2016 01:32, Brano Panak wrote: > - m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL ); > + m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL , _T("Cancel")); This will break Alt-C as Cancel on the other architectures. Not a big loss in my opinion (does the Escape key work?),

Re: [Kicad-developers] [PATCH 0/4] Use of "virtual" and "override" keywords

2016-07-12 Thread Simon Richter
Hi Wayne, On 12.07.2016 16:07, Wayne Stambaugh wrote: > I was looking over this patch set and before I apply it I want to be > sure that all base class functions declared as virtual are explicitly > declared as override in the derived classes. It's a very large patch > set and I don't have time

Re: [Kicad-developers] Stable release 5 road map.

2016-07-05 Thread Simon Richter
Hi, On 05.07.2016 09:55, Wayne Stambaugh wrote: > If you are > working on new features that are not in the version 5 road map, please > inform me of what you working on and whether or not it will be ready to > release by FOSDEM 2017. My current branches: 1. writeable pin table This could

Re: [Kicad-developers] Regarding [PATCH] refactor_profile.patch

2016-07-05 Thread Simon Richter
Hi, On 05.07.2016 01:45, Michael Steinberg wrote: > I was made aware that MinGW's implementation of std::chrono might be > lacking, but my testbed is not including that yet, so I cannot > double-check the implementation. I've started a build on Jenkins, but it will take a while until the system

[Kicad-developers] [PATCH] Replace BOOST_FOREACH with C++11 range based for

2016-06-29 Thread Simon Richter
--- common/config_params.cpp | 10 ++--- common/dialogs/wx_html_report_panel.cpp| 6 +-- common/draw_panel_gal.cpp | 7 ++-- common/footprint_info.cpp | 2 +- common/geometry/hetriang.cpp

Re: [Kicad-developers] [PATCH 2/2] Replace BOOST_FOREACH with C++11 range based for

2016-06-29 Thread Simon Richter
Hi, On 29.06.2016 20:08, Wayne Stambaugh wrote: > This patch is failing against r6957. Here is the patch error: Ah, that was still rebased on the state before the shared_ptr patch, which removes another include. Simon signature.asc Description: OpenPGP digital signature

[Kicad-developers] [PATCH 2/2] Replace BOOST_FOREACH with C++11 range based for

2016-06-29 Thread Simon Richter
--- common/config_params.cpp | 10 ++--- common/dialogs/wx_html_report_panel.cpp| 6 +-- common/draw_panel_gal.cpp | 7 ++-- common/footprint_info.cpp | 2 +- common/geometry/hetriang.cpp

[Kicad-developers] [PATCH 1/2] Rewrite loop conditions in SchematicCleanUp

2016-06-29 Thread Simon Richter
These are a tiny bit more readable, and do not depend on all branches to correctly advance the loop variable. --- eeschema/sch_screen.cpp | 27 +++ 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index

Re: [Kicad-developers] [PATCH] Rewrite loop conditions in SchematicCleanUp

2016-06-29 Thread Simon Richter
Hi Wayne, On 29.06.2016 17:29, Wayne Stambaugh wrote: > This patch needs rebased as well. Please include the patch as an > attachment rather than inline. Bazaar doesn't play as nicely with > inline mail merges as git does. The "Rewrite loop conditions" one, or the "BOOST_FOREACH" one? The

Re: [Kicad-developers] [PATCH 5/5] Replace boost::shared_ptr with std::shared_ptr

2016-06-29 Thread Simon Richter
Hi Wayne, On 29.06.2016 15:57, Wayne Stambaugh wrote: > I hate to ask you again but this patch no longer applies cleanly. > Please rebase it and resubmit it when you get a chance. No problem, that happens almost automatically with git. :) Simon signature.asc Description: OpenPGP digital

[Kicad-developers] [PATCH] Replace boost::shared_ptr with std::shared_ptr

2016-06-29 Thread Simon Richter
This is a simple 1:1 replacement for all cases where shared_ptr is not used to point at an array (array handling is not in C++11). --- 3d-viewer/3d_mesh_model.h | 4 ++-- common/gal/opengl/opengl_gal.cpp | 2 +- common/geometry/hetriang.cpp | 34

Re: [Kicad-developers] [PATCH v2] Add FindSWIG.cmake from CMake 3.5 for swig 3.0 support

2016-06-29 Thread Simon Richter
Difference in v2: Drop the ".cmake" suffix on the included files so they are looked for on the full search path. That one only became apparent after I removed the build dir and re-configured the project. Simon signature.asc Description: OpenPGP digital signature

[Kicad-developers] [PATCH v2] Add FindSWIG.cmake from CMake 3.5 for swig 3.0 support

2016-06-29 Thread Simon Richter
The FindSWIG.cmake shipped with CMake 3.0 does not yet look for the "cmake3.0" binary, this was added shortly after the 3.0 release. This file can be removed once the minimum CMake version is 3.1 or greater. --- CMakeModules/FindSWIG.cmake | 96 + 1

[Kicad-developers] [PATCH] Add FindSWIG.cmake from CMake 3.5 for swig 3.0 support

2016-06-29 Thread Simon Richter
The FindSWIG.cmake shipped with CMake 3.0 does not yet look for the "cmake3.0" binary, this was added shortly after the 3.0 release. This file can be removed once the minimum CMake version is 3.1 or greater. --- CMakeModules/FindSWIG.cmake | 96 + 1

Re: [Kicad-developers] KiCad library installation (in Linux and others)

2016-06-29 Thread Simon Richter
Hi, On 29.06.2016 15:03, Wayne Stambaugh wrote: > Sounds like we need separate installation instructions for Debian and > it's derivatives and the PPA and some helpful notes about the differences. I'm going to poke Jean-Samuel and Georges about this. It is a rather annoying state of affairs.

Re: [Kicad-developers] KiCad library installation (in Linux and others)

2016-06-29 Thread Simon Richter
Hi, On 29.06.2016 11:26, Fabrizio Tappero wrote: > sudo apt-get install kicad > ​D > oing so kicad libs do not get installed and furthermore the version of > KiCad that you get will inevitably complain about libs not being installed > ​. S​ > ome people have complained about it. In Debian, you

Re: [Kicad-developers] [PATCH] Fix memory leaks with improper wxBaseConfig* usage (model ownership and ownership-transfer with std::unique_ptr)

2016-06-28 Thread Simon Richter
Hi, On 28.06.2016 21:30, Michael Steinberg wrote: > Now I only need to know how I should go about your concerns. Maybe using > something along the lines of > > using WX_CONFIG_PTR = std::unique_ptr< wxConfigBase >; No, that isn't readable either, because it doesn't communicate the

Re: [Kicad-developers] [PATCH] Fix memory leaks with improper wxBaseConfig* usage (model ownership and ownership-transfer with std::unique_ptr)

2016-06-27 Thread Simon Richter
Hi, On 28.06.2016 00:30, Michael Steinberg wrote: >>> -wxConfigBase* config = GetNewConfig( fn.GetFullPath() ); >>> +auto config = GetNewConfig( fn.GetFullPath() ); >>> config->Write( HOTKEYS_CONFIG_KEY, msg ); >>> -delete config; >> This has subtle potential

Re: [Kicad-developers] [PATCH] Fix memory leaks with improper wxBaseConfig* usage (model ownership and ownership-transfer with std::unique_ptr)

2016-06-27 Thread Simon Richter
On 27.06.2016 23:47, Michael Steinberg wrote: > === modified file 'bitmap2component/bitmap2cmp_gui.cpp' > --- bitmap2component/bitmap2cmp_gui.cpp 2016-06-08 06:32:01 + > +++ bitmap2component/bitmap2cmp_gui.cpp 2016-06-27 19:02:56 + [...] > +// TODO: Should the config

[Kicad-developers] [PATCH 3/5] Check sorting of netlist during ERC

2016-06-27 Thread Simon Richter
The ERC code depends on netlist items to be sorted by net code, so verify that in debug builds. While this condition is stricter than necessary, it should still hold with the current code, and provide a good canary if a change to the sorting code might break ERC. ---

[Kicad-developers] [PATCH 2/5] Cache netlist item during ERC

2016-06-27 Thread Simon Richter
This adds a suffix "Idx" to the indexes into the list, and introduces local copies of the pointers to the objects we are looking at, in order to have a shorter way of addressing them. --- eeschema/dialogs/dialog_erc.cpp | 30 -- 1 file changed, 16 insertions(+), 14

[Kicad-developers] [PATCH 4/5] Drop extra copy ctors from IFSG_NODE

2016-06-27 Thread Simon Richter
This is unnecessary -- explicitly specifying the regular copy ctor will inhibit any generated versions anyway. --- include/plugins/3dapi/ifsg_node.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/include/plugins/3dapi/ifsg_node.h b/include/plugins/3dapi/ifsg_node.h index 6b3641e..f949c80

[Kicad-developers] [PATCH 5/5] Replace boost::shared_ptr with std::shared_ptr

2016-06-27 Thread Simon Richter
This is a simple 1:1 replacement for all cases where shared_ptr is not used to point at an array (array handling is not in C++11). --- 3d-viewer/3d_mesh_model.h | 4 ++-- common/gal/opengl/opengl_gal.cpp | 2 +- common/geometry/hetriang.cpp | 34

[Kicad-developers] [PATCH 1/5] Clarify ERC: we're iterating netlist items, not nets

2016-06-27 Thread Simon Richter
This renames the "net", "lastNet" and "nextNet" variables to "item", "lastItem" and "nextItem", respectively, because these refer to netlist items, not nets. --- eeschema/dialogs/dialog_erc.cpp | 26 +- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git

Re: [Kicad-developers] [PATCH 13/16] Avoid static variable in wire merge

2016-06-27 Thread Simon Richter
patch, rebased onto the current state, is attached. Sorry for the extra work. :/ Simon commit e07a906e90e461c77fbef21c2100d297fe73b85f Author: Simon Richter <simon.rich...@hogyros.de> Date: Mon Jun 20 03:07:52 2016 +0200 Rewrite line merging without static vector and sort

[Kicad-developers] Announcement, CERN trip.

2016-06-27 Thread Simon Richter
Hi, Wayne Stambaugh wrote: > I'm am excited to announce that I will be traveling to CERN to spend a full week working on KiCad. I will arrive in Geneva on Saturday, July 2nd and return on Sunday, July 10th. If anyone in that part of the world can find the time to get together, please let me

[Kicad-developers] [PATCH] Replace BOOST_FOREACH with C++11 range based for

2016-06-26 Thread Simon Richter
--- common/config_params.cpp | 10 ++--- common/dialogs/wx_html_report_panel.cpp| 6 +-- common/draw_panel_gal.cpp | 7 ++-- common/footprint_info.cpp | 2 +- common/geometry/hetriang.cpp

[Kicad-developers] [PATCH] Rewrite loop conditions in SchematicCleanUp

2016-06-21 Thread Simon Richter
These are a tiny bit more readable, and do not depend on all branches to correctly advance the loop variable. --- eeschema/sch_screen.cpp | 27 +++ 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index

[Kicad-developers] [PATCH v3] Rewrite line merging without static vector and sort

2016-06-19 Thread Simon Richter
The static vector is a massive code smell, and as we're only interested in the most extreme elements, we can simply use std::min and std::max with custom comparison functions instead. --- eeschema/sch_line.cpp | 33 - 1 file changed, 12 insertions(+), 21

[Kicad-developers] [PATCH v2] Rewrite line merging without static vector and sort

2016-06-19 Thread Simon Richter
The static vector is a massive code smell, and as we're only interested in the most extreme elements, we can simply use std::min and std::max with custom comparison functions instead. --- eeschema/sch_line.cpp | 33 - 1 file changed, 12 insertions(+), 21

[Kicad-developers] [PATCH] Rewrite line merging without static vector and sort

2016-06-19 Thread Simon Richter
The static vector is a massive code smell, and as we're only interested in the most extreme elements, we can simply use std::min and std::max with custom comparison functions instead. --- eeschema/sch_line.cpp | 40 +++- 1 file changed, 19 insertions(+), 21

Re: [Kicad-developers] How to SCH_SCREEN::SchematicCleanup?

2016-06-15 Thread Simon Richter
Hi, On 15.06.2016 08:53, jp charras wrote: > I do not understand why net ties are related to schematic cleanup. > They are 2 separate features. For the "net ties as special junctions" implementation, the cleanup code needs to be adjusted -- that's where they come together. > Although no

[Kicad-developers] How to SCH_SCREEN::SchematicCleanup?

2016-06-14 Thread Simon Richter
Hi, for net ties, I have to touch the schematic cleanup, because that will merge adjacent wires going in the same direction, which is not useful for me, as I need all wires going into a tie as separate nets (except for ERC, where they are connected). I'd like to generalize this to "wires are

Re: [Kicad-developers] pcbnew feature: Vias on Solder Mask Layers

2016-06-12 Thread Simon Richter
Hi, On 12.06.2016 22:22, Wayne Stambaugh wrote: > Plotting is definitely more accurate than printing although I wont > completely rule it out. I make a lot of prototype boards and I've found > through trial and error the plotting is the way to go. I think it is wrong in both dialogs. Whether

[Kicad-developers] [PATCH v2] Use size_t for sizes and offsets

2016-06-10 Thread Simon Richter
This shouldn't affect code because these are compile time constants anyway, but gets rid of some annoying warnings about casting integers to pointers of different size. --- include/gal/opengl/vertex_common.h | 24 1 file changed, 12 insertions(+), 12 deletions(-) diff

[Kicad-developers] [PATCH 2/2] Avoid warning about int -> pointer conversion

2016-06-09 Thread Simon Richter
--- common/gal/opengl/gpu_manager.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/common/gal/opengl/gpu_manager.cpp b/common/gal/opengl/gpu_manager.cpp index 2cba5cc..f14a994 100644 --- a/common/gal/opengl/gpu_manager.cpp +++ b/common/gal/opengl/gpu_manager.cpp @@

[Kicad-developers] [PATCH 1/2] Avoid pointer truncation in debug message

2016-06-09 Thread Simon Richter
--- common/gal/opengl/cached_container.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/common/gal/opengl/cached_container.cpp b/common/gal/opengl/cached_container.cpp index 40d4969..2029929 100644 --- a/common/gal/opengl/cached_container.cpp +++

Re: [Kicad-developers] Boost 1.61.0

2016-06-09 Thread Simon Richter
Hi, On 05.06.2016 20:12, Chris Pavlina wrote: > Uh, has anyone besides Nick and Simon seen this? Windows builds against 1.60 still AFAIK, mainly because FindBoost.cmake has an explicit list of versions to look for, so it isn't a simple drop in replacement. Simon signature.asc

Re: [Kicad-developers] Failed to build on my system

2016-06-09 Thread Simon Richter
Hi, On 09.06.2016 20:28, Mário Luzeiro wrote: [Using iterator instead of const_iterator as place hint for std::list] > This workaround works! I think this gcc version we can support with only little effort, since we need to have a non-const reference to the container anyway, so getting a

[Kicad-developers] [PATCH 07/16] Kill unused NETLIST_EXPORTER_GENERIC::writeListOfNets

2016-06-07 Thread Simon Richter
This function is unused, and looks similar to the tree builder above, so it might likely be left over from a refactoring effort. --- .../netlist_exporters/netlist_exporter_generic.cpp | 73 -- .../netlist_exporters/netlist_exporter_generic.h | 7 --- 2 files changed, 80

[Kicad-developers] [PATCH 09/16] Replace boost::shared_ptr with std::shared_ptr

2016-06-07 Thread Simon Richter
This is a simple 1:1 replacement for all cases where shared_ptr is not used to point at an array (array handling is not in C++11). --- 3d-viewer/3d_mesh_model.h | 4 ++-- common/gal/opengl/opengl_gal.cpp | 2 +- common/geometry/hetriang.cpp | 34

[Kicad-developers] [PATCH 16/16] Clean up warnings from exception handlers

2016-06-07 Thread Simon Richter
The exception objects caught are either not referenced at all, or only in debug builds. This avoids the warnings for the unused variables. --- eeschema/class_libentry.cpp| 2 +- eeschema/class_library.cpp | 4 ++-- eeschema/cross-probing.cpp | 2 +-

[Kicad-developers] [PATCH 15/16] Avoid switch with only default case

2016-06-07 Thread Simon Richter
These switch statements only have a single "default" case, so they are unneeded. --- bitmap2component/bitmap2cmp_gui.cpp | 10 +- pcb_calculator/pcb_calculator.cpp | 12 +--- 2 files changed, 2 insertions(+), 20 deletions(-) diff --git a/bitmap2component/bitmap2cmp_gui.cpp

[Kicad-developers] [PATCH 08/16] Drop extra copy ctors from IFSG_NODE

2016-06-07 Thread Simon Richter
This is unnecessary -- explicitly specifying the regular copy ctor will inhibit any generated versions anyway. --- include/plugins/3dapi/ifsg_node.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/include/plugins/3dapi/ifsg_node.h b/include/plugins/3dapi/ifsg_node.h index 6b3641e..f949c80

[Kicad-developers] [PATCH 13/16] Avoid static variable in wire merge

2016-06-07 Thread Simon Richter
There is little to no reason why this variable should be static, given that it is cleared after each iteration. --- eeschema/sch_line.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/eeschema/sch_line.cpp b/eeschema/sch_line.cpp index 72efb5c..050b786 100644 ---

[Kicad-developers] [PATCH 14/16] Reserve appropriate space in local vector

2016-06-07 Thread Simon Richter
This is just a speed optimization -- preallocate four items to avoid reallocations. --- eeschema/sch_line.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/eeschema/sch_line.cpp b/eeschema/sch_line.cpp index 050b786..6d86b5d 100644 --- a/eeschema/sch_line.cpp +++ b/eeschema/sch_line.cpp

[Kicad-developers] [PATCH 11/16] Clarify ownership semantics

2016-06-07 Thread Simon Richter
SCREEN objects are typically owned by the DRAW_FRAME they are attached to. SCH_SCREEN objects may additionally be shared between one DRAW_FRAME, and multiple SCH_SHEET objects, so they are reference counted. To make this distinction more obvious, and avoid potential errors, move the pointer

[Kicad-developers] [PATCH 10/16] Replace unshared boost::shared_array with std::unique_ptr

2016-06-07 Thread Simon Richter
These are never shared, so std::unique_ptr works fine, and std::unique_ptr has a specialisation for array types that uses "operator delete[]", so this is still correct. --- common/gal/opengl/opengl_gal.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git

[Kicad-developers] [PATCH 12/16] Make NETLIST_OBJECT::GetConnectionType() const

2016-06-07 Thread Simon Richter
This function does not need to modify object state. --- eeschema/class_netlist_object.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eeschema/class_netlist_object.h b/eeschema/class_netlist_object.h index 9608f90..403bade 100644 --- a/eeschema/class_netlist_object.h +++

[Kicad-developers] [PATCH 00/16] Simple patches

2016-06-07 Thread Simon Richter
Simon Richter (16): Fix spelling "propage" -> "propagate" Add missing dependency github_plugin -> pcbcommon Clarify ERC: we're iterating netlist items, not nets Explain how ERC works. Cache netlist item during ERC Check sorting of netlist during ERC Kill unuse

[Kicad-developers] [PATCH 03/16] Clarify ERC: we're iterating netlist items, not nets

2016-06-07 Thread Simon Richter
This renames the "net", "lastNet" and "nextNet" variables to "item", "lastItem" and "nextItem", respectively, because these refer to netlist items, not nets. --- eeschema/dialogs/dialog_erc.cpp | 26 +- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git

[Kicad-developers] [PATCH 02/16] Add missing dependency github_plugin -> pcbcommon

2016-06-07 Thread Simon Richter
The GitHub plugin needs the generated PCB parser code, so introduce an artificial dependency. --- pcbnew/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pcbnew/CMakeLists.txt b/pcbnew/CMakeLists.txt index e77cbd9..aea5469 100644 --- a/pcbnew/CMakeLists.txt +++

[Kicad-developers] [PATCH 04/16] Explain how ERC works.

2016-06-07 Thread Simon Richter
This is just a comment explaining the use of the local variables. --- eeschema/dialogs/dialog_erc.cpp | 9 + 1 file changed, 9 insertions(+) diff --git a/eeschema/dialogs/dialog_erc.cpp b/eeschema/dialogs/dialog_erc.cpp index 2f9a1f2..7323a64 100644 --- a/eeschema/dialogs/dialog_erc.cpp

[Kicad-developers] [PATCH 06/16] Check sorting of netlist during ERC

2016-06-07 Thread Simon Richter
The ERC code depends on netlist items to be sorted by net code, so verify that in debug builds. While this condition is stricter than necessary, it should still hold with the current code, and provide a good canary if a change to the sorting code might break ERC. ---

[Kicad-developers] [PATCH 05/16] Cache netlist item during ERC

2016-06-07 Thread Simon Richter
This adds a suffix "_idx" to the indexes into the list, and introduces local copies of the pointers to the objects we are looking at, in order to have a shorter way of addressing them. --- eeschema/dialogs/dialog_erc.cpp | 30 -- 1 file changed, 16 insertions(+), 14

Re: [Kicad-developers] DEBUG vs NDEBUG

2016-06-04 Thread Simon Richter
Hi, On 02.06.2016 02:32, Wayne Stambaugh wrote: > Ahh, the old double negative. Using !NDEBUG would be ugly but I suppose > it would be effective. I'm not sure why cmake isn't defining DEBUG for > debug builds. I thought at one time it did but I could be wrong. We define it manually in the

[Kicad-developers] DEBUG vs NDEBUG

2016-06-01 Thread Simon Richter
Hi, there was a small hiccup with a missing symbol in Release builds, which I also saw in the MSVC builds, and expected to be affecting those only because I don't have explicit logic to set DEBUG and NDEBUG in CMakeLists.txt, assuming that CMake does that for me. CMake does not set DEBUG in

[Kicad-developers] [PATCH 09/12] Narrow assumption on OpenSSL use

2016-05-27 Thread Simon Richter
CURL on Windows uses OpenSSL on MSYS, and SChannel on MSVC. --- common/kicad_curl/kicad_curl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/kicad_curl/kicad_curl.cpp b/common/kicad_curl/kicad_curl.cpp index a5670a7..fb4413c 100644 ---

[Kicad-developers] [PATCH 07/12] Work around VC++ 2015 bug.

2016-05-27 Thread Simon Richter
The combination of - template resolution - optimization - structured exception handling - chained operator= appears to trigger a bug in the compiler. As this code is nonsensical anyway (numeric_limits<>::min() returns the smallest positive value for floating point types, but the largest

[Kicad-developers] [PATCH 12/12] Drop and , no longer needed

2016-05-27 Thread Simon Richter
--- utils/idftools/idf2vrml.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/utils/idftools/idf2vrml.cpp b/utils/idftools/idf2vrml.cpp index a62db0f..47821d0 100644 --- a/utils/idftools/idf2vrml.cpp +++ b/utils/idftools/idf2vrml.cpp @@ -52,8 +52,6 @@ #include #include #include

[Kicad-developers] [PATCH 11/12] Use wxIMPLEMENT_APP_CONSOLE for console apps

2016-05-27 Thread Simon Richter
--- utils/idftools/idf2vrml.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/idftools/idf2vrml.cpp b/utils/idftools/idf2vrml.cpp index 05e375e..a62db0f 100644 --- a/utils/idftools/idf2vrml.cpp +++ b/utils/idftools/idf2vrml.cpp @@ -100,7 +100,7 @@ static const

[Kicad-developers] [PATCH 10/12] Convert idf2vrml to use wxApp etc for option processing

2016-05-27 Thread Simon Richter
From: Cirilo Bernardo --- utils/idftools/idf2vrml.cpp | 267 +--- 1 file changed, 126 insertions(+), 141 deletions(-) diff --git a/utils/idftools/idf2vrml.cpp b/utils/idftools/idf2vrml.cpp index df66e4b..05e375e 100644 ---

[Kicad-developers] [PATCH 08/12] windows: provide performance measurement primitives

2016-05-27 Thread Simon Richter
On Windows, performance measurement is best performed using QueryPerformanceCounter, which reports ticks with an arbitrary but fixed frequency. --- include/profile.h | 32 1 file changed, 32 insertions(+) diff --git a/include/profile.h b/include/profile.h index

[Kicad-developers] [PATCH 05/12] Avoid conflicting declaration for Pgm()

2016-05-27 Thread Simon Richter
From: Simon Richter <ge...@kiwi.hogyros.de> This function has two conflicting definitions in the "kicad" executable and the other wrapper programs. As the kifaces can be loaded from either, this silently assumes compatible data layout for the PGM_KICAD and PGM_BASE types when pas

[Kicad-developers] [PATCH 06/12] Make sure KIFACE_GETTER linkage is consistent

2016-05-27 Thread Simon Richter
This makes sure that the declaration is always the same within a single module, so all users have the same idea of whether the symbol is imported. In all dynamically linked objects, all users should be aware that the symbol is imported, while in the statically linked bitmap2component program, no

[Kicad-developers] [PATCH 03/12] Open namespace around definitions

2016-05-27 Thread Simon Richter
While defining functions in another namespace is technically allowed as long as the definition can be matched to a declaration, this can lead to ambiguous resolutions, such as here (GAL vs KIGFX). --- pcbnew/ratsnest_viewitem.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff

[Kicad-developers] [PATCH 04/12] Avoid C99 style compound statement

2016-05-27 Thread Simon Richter
Support for C99 in C++ programs is a gcc extension. --- eeschema/autoplace_fields.cpp | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eeschema/autoplace_fields.cpp b/eeschema/autoplace_fields.cpp index 9af6247..96ee6c0 100644 --- a/eeschema/autoplace_fields.cpp +++

[Kicad-developers] [PATCH 02/12] Add missing C++ stdlib headers

2016-05-27 Thread Simon Richter
The GCC standard library headers often include other headers, which makes some code compile that forgets to include several headers. --- common/gal/graphics_abstraction_layer.cpp | 2 ++ common/grid_tricks.cpp | 2 ++ common/selcolor.cpp|

[Kicad-developers] [PATCH 00/12] A few well-aged patches

2016-05-27 Thread Simon Richter
to use wxApp etc for option processing Simon Richter (11): Use std::atomic for portable locale init counting Add missing C++ stdlib headers Open namespace around definitions Avoid C99 style compound statement Avoid conflicting declaration for Pgm() Make sure KIFACE_GETTER linkage is consistent

[Kicad-developers] [PATCH 01/12] Use std::atomic for portable locale init counting

2016-05-27 Thread Simon Richter
--- common/common.cpp | 10 +++--- include/common.h | 4 +++- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/common/common.cpp b/common/common.cpp index 388a803..976e419 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -64,14 +64,12 @@ EDA_COLOR_Tg_GhostColor;

[Kicad-developers] [PATCH 2/2] Remove redundant old copy of cimage class

2016-05-26 Thread Simon Richter
The same class is defined below the 3d_rendering/ directory as well, with more functionality. --- 3d-viewer/3d_draw.cpp| 2 +- 3d-viewer/3d_draw_board_body.cpp | 2 +- 3d-viewer/CImage.cpp | 440 --- 3d-viewer/CImage.h

[Kicad-developers] [PATCH 1/2] Drop extra copy ctors from IFSG_NODE

2016-05-26 Thread Simon Richter
This is unnecessary -- explicitly specifying the regular copy ctor will inhibit any generated versions anyway. --- include/plugins/3dapi/ifsg_node.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/include/plugins/3dapi/ifsg_node.h b/include/plugins/3dapi/ifsg_node.h index 6b3641e..f949c80

Re: [Kicad-developers] [PATCH] Schematic Cleanup: Split lines at junctions

2016-05-19 Thread Simon Richter
Hi, On 20.05.2016 00:25, Thor-Arne wrote: > Delete wire is on the delete button. and delete segment is on the > backspace key. Ah, that makes (some) sense. To me, the behaviour of the delete key looks fairly nonsensical, because it will stop at corners, but not at junctions, while I'd expect

[Kicad-developers] Who is responsible for adding to the eeschema draw list?

2016-05-19 Thread Simon Richter
Hi, I'm touching a bit of eeschema code and am unsure who is responsible for adding SCH_ITEM objects to SCH_SCREEN's m_DrawList. Looking at the AddJunction function, it adds the junction to the draw list if it is also added to the undo list, while the caller adds it unconditionally. Where would

Re: [Kicad-developers] [PATCH] Schematic Cleanup: Split lines at junctions

2016-05-19 Thread Simon Richter
Hi jp, On 19.05.2016 19:44, jp charras wrote: > It could be worth to *clearly* explain in your patches what bug you want to > fix, or what enhancement > you are adding. Good point. The last batch has two goals: 1. fix a long-standing annoyance that deleting a line segment will delete the

[Kicad-developers] [PATCH] Schematic Cleanup: Split lines at junctions

2016-05-19 Thread Simon Richter
--- eeschema/bus-wire-junction.cpp | 3 +++ eeschema/sch_screen.cpp| 18 ++ 2 files changed, 21 insertions(+) diff --git a/eeschema/bus-wire-junction.cpp b/eeschema/bus-wire-junction.cpp index 44dcdf3..36a416d 100644 --- a/eeschema/bus-wire-junction.cpp +++

Re: [Kicad-developers] changing language

2016-05-19 Thread Simon Richter
Hi, On 19.05.2016 09:42, Marco Ciampa wrote: > Changing language IMHO should pop-up a dialog warning that some items > could continue to show as last translation option setting until closing > and reopening of all kicad sessions. I'm still not sure why we actually need that option. It is 2016,

[Kicad-developers] [PATCH v2] Rewrite loop conditions in SchematicCleanUp

2016-05-18 Thread Simon Richter
These are a tiny bit more readable, and do not depend on all branches to correctly advance the loop variable. --- eeschema/sch_screen.cpp | 27 +++ 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index

[Kicad-developers] [PATCH] SCH_LINE: Split mergeability test and actual merge

2016-05-18 Thread Simon Richter
--- eeschema/sch_line.cpp | 58 ++--- eeschema/sch_line.h | 16 ++ eeschema/sch_screen.cpp | 3 ++- 3 files changed, 45 insertions(+), 32 deletions(-) diff --git a/eeschema/sch_line.cpp b/eeschema/sch_line.cpp index 72efb5c..372885b

[Kicad-developers] [PATCH 2/5] Schematic Cleanup: introduce shorthand for line/junction tests

2016-05-18 Thread Simon Richter
--- eeschema/sch_screen.cpp | 11 --- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index bb3ebe1..fd9b9b2 100644 --- a/eeschema/sch_screen.cpp +++ b/eeschema/sch_screen.cpp @@ -432,7 +432,12 @@ bool

[Kicad-developers] [PATCH 5/5] Schematic cleanup: shortcut if no match can happen

2016-05-18 Thread Simon Richter
--- eeschema/sch_screen.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index 52e86f1..a2655a7 100644 --- a/eeschema/sch_screen.cpp +++ b/eeschema/sch_screen.cpp @@ -454,6 +454,9 @@ bool SCH_SCREEN::SchematicCleanUp() const

[Kicad-developers] [PATCH 1/5] Rewrite loop conditions in SchematicCleanUp

2016-05-18 Thread Simon Richter
These are a tiny bit more readable, and do not depend on all branches to correctly advance the loop variable. --- eeschema/sch_screen.cpp | 27 +++ 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index

[Kicad-developers] [PATCH 4/5] Schematic Cleanup: Introduce shorthand for rhs line/junction tests

2016-05-18 Thread Simon Richter
--- eeschema/sch_screen.cpp | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index 182bba7..52e86f1 100644 --- a/eeschema/sch_screen.cpp +++ b/eeschema/sch_screen.cpp @@ -449,7 +449,12 @@ bool

[Kicad-developers] [PATCH 3/5] Schematic Cleanup: Move lhs == rhs test to beginning of loop

2016-05-18 Thread Simon Richter
--- eeschema/sch_screen.cpp | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/eeschema/sch_screen.cpp b/eeschema/sch_screen.cpp index fd9b9b2..182bba7 100644 --- a/eeschema/sch_screen.cpp +++ b/eeschema/sch_screen.cpp @@ -446,6 +446,9 @@ bool SCH_SCREEN::SchematicCleanUp()

[Kicad-developers] [PATCH] Use std::atomic for portable locale init counting

2016-05-17 Thread Simon Richter
--- common/common.cpp | 10 +++--- include/common.h | 4 +++- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/common/common.cpp b/common/common.cpp index 09a2103..4be1988 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -68,14 +68,12 @@ EDA_COLOR_Tg_GhostColor;

[Kicad-developers] [PATCH] Fix spelling "propage" -> "propagate"

2016-05-17 Thread Simon Richter
--- eeschema/class_netlist_object.h | 2 +- eeschema/netlist.cpp| 16 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/eeschema/class_netlist_object.h b/eeschema/class_netlist_object.h index d47ebbd..9608f90 100644 --- a/eeschema/class_netlist_object.h

[Kicad-developers] [PATCH] Check sorting of netlist during ERC

2016-05-17 Thread Simon Richter
The ERC code depends on netlist items to be sorted by net code, so verify that in debug builds. While this condition is stricter than necessary, it should still hold with the current code, and provide a good canary if a change to the sorting code might break ERC. ---

[Kicad-developers] [PATCH] Explain how ERC works.

2016-05-17 Thread Simon Richter
--- eeschema/dialogs/dialog_erc.cpp | 9 + 1 file changed, 9 insertions(+) diff --git a/eeschema/dialogs/dialog_erc.cpp b/eeschema/dialogs/dialog_erc.cpp index 9a850e5..681a4db 100644 --- a/eeschema/dialogs/dialog_erc.cpp +++ b/eeschema/dialogs/dialog_erc.cpp @@ -496,6 +496,15 @@ void

[Kicad-developers] [PATCH] Clarify ERC: we're iterating netlist items, not nets

2016-05-17 Thread Simon Richter
--- eeschema/dialogs/dialog_erc.cpp | 26 +- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/eeschema/dialogs/dialog_erc.cpp b/eeschema/dialogs/dialog_erc.cpp index f9d2ca6..3d0b31d 100644 --- a/eeschema/dialogs/dialog_erc.cpp +++

Re: [Kicad-developers] [PATCH] Rework OpenSSL mutex workaround

2016-05-05 Thread Simon Richter
Hi Wayne, On 05.05.2016 22:51, Wayne Stambaugh wrote: > Is this patch for the stable branch, the product branch, or both? Currently, for the product branch, and ideally it should be trivial to backport to the stable branch afterwards (it removes a lot of code that doesn't exist in the stable

[Kicad-developers] [PATCH] Rework OpenSSL mutex workaround

2016-05-05 Thread Simon Richter
This allows compiling KiCad without OpenSSL. If CURL uses OpenSSL in the background, we serialize requests to avoid a bug there, which degrades performance. Given that no one should link KiCad against OpenSSL really because of licence conflicts, this is not so bad. --- common/CMakeLists.txt

Re: [Kicad-developers] [PATCH 0/4] Backport libcurl code from development branch

2016-05-05 Thread Simon Richter
Hi, On 05.05.2016 20:01, Bernhard Stegmaier wrote: > Just a note… I may be wrong, but I guess for OS X this is only true if you > build against the curl supplied by OS X natively? Would it make sense to serialize the network accesses if libcurl tells us that it is using the OpenSSL backend (at

Re: [Kicad-developers] [PATCH 0/4] Backport libcurl code from development branch

2016-05-05 Thread Simon Richter
Hi Wayne, On 05.05.2016 16:15, Wayne Stambaugh wrote: > Thanks Simon! Nice work. I just tested this on windows and it appears > to work fine. I'm assuming you tested this on Linux. Yes, briefly. These are just the two "switch to CURL" patches from the devel branch, and one small fix, so not

[Kicad-developers] [PATCH 4/4] Remove unused FindOpenSSL.cmake

2016-05-05 Thread Simon Richter
--- CMakeModules/FindOpenSSL.cmake | 342 - 1 file changed, 342 deletions(-) delete mode 100644 CMakeModules/FindOpenSSL.cmake diff --git a/CMakeModules/FindOpenSSL.cmake b/CMakeModules/FindOpenSSL.cmake deleted file mode 100644 index de91787..000 ---

[Kicad-developers] [PATCH 3/4] Replace avhttp with libcurl: Some fixes: 1. Fixed an assumption somebody originally made in the plugin that std::string had contiguous storage. This is not specced behav

2016-05-05 Thread Simon Richter
From: unknown --- Documentation/development/compiling.md | 12 +--- common/basicframe.cpp | 3 +++ common/kicad_curl/kicad_curl.cpp | 26 ++ common/kicad_curl/kicad_curl_easy.cpp | 26 +-

[Kicad-developers] [PATCH 2/4] Add missing dependency github_plugin -> pcbcommon

2016-05-05 Thread Simon Richter
The GitHub plugin needs the generated PCB parser code. --- pcbnew/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pcbnew/CMakeLists.txt b/pcbnew/CMakeLists.txt index 1249069..6fa6ede 100644 --- a/pcbnew/CMakeLists.txt +++ b/pcbnew/CMakeLists.txt @@ -536,6 +536,8 @@

[Kicad-developers] [PATCH 1/4] Replace the avhttp library used by the github plugin with libcurl.

2016-05-05 Thread Simon Richter
From: Mark Roszko --- CMakeLists.txt| 5 + common/CMakeLists.txt | 6 +- common/kicad_curl/kicad_curl.cpp | 54 +++ common/kicad_curl/kicad_curl_easy.cpp | 163 +

[Kicad-developers] [PATCH 0/4] Backport libcurl code from development branch

2016-05-05 Thread Simon Richter
ble by calling .reserve() which should give a far better guarantee. 2. Added copy to clipboard information for curl 3. Removed some openssl references in compiling.md 4. Renamed struct vars to be uppercase to match "public var" code style policy Simon Richter (2):

Re: [Kicad-developers] Debian and Ubuntu packaging.

2016-05-05 Thread Simon Richter
Hi Wayne, On 02.05.2016 21:09, Wayne Stambaugh wrote: > Do we have any Debian developers on our mailing list? I though I saw a > Simon Richter on Planet Debian. Is that you Simon? Yes. > Can someone tell me > why the Debian package devs decided to build KiCad with the Git

<    1   2   3   4   5   6   7   8   9   >