Chris Pavlina
ec67218b5a
Remove unneeded 'new' and NULL check
...
Coverity CID: 143743
2016-05-10 22:36:44 -04:00
Chris Pavlina
7b5ab741bb
Fix null dereference for certain bad PCB files
...
Coverity: CID 147344 Unchecked dynamic_cast
If a file that parses validly in Parse() but does not return a BOARD is loaded,
no exception will be thrown but the dynamic_cast will return NULL. This NULL
is tested by wxASSERT(), which does not actually halt anything (especially in
release builds), and then we proceed to board->SetFileName().
This can be demonstrated quickly by renaming a .kicad_mod to .kicad_pcb and
trying to load it. pcbnew will crash.
2016-05-10 22:36:39 -04:00
Chris Pavlina
445db7da58
Fix uninitialized fields
...
Coverity: CIDs 102698, 147347, 147349, 147350
2016-05-10 22:36:23 -04:00
Chris Pavlina
5044fc5799
Fix build error on some platforms from r6788
...
r6788 = git f9386fc
2016-05-10 18:57:10 -04:00
Chris Pavlina
ba17a54c08
Remove "Dump zone geometry to files when filling"
...
The code to perform the dump has not been removed, but the GUI option and
global flag (ugh) have been.
2016-05-10 17:37:51 -04:00
Chris Pavlina
e9a9a269b4
pcbnew legacy: remove option to hide via drill
...
Via drills are now shown in all cases, matching GAL behavior, and the option no
longer exists in the preferences dialog.
2016-05-10 16:47:37 -04:00
Chris Pavlina
f9386fcbc0
Add support for PCB and footprint format versioning
...
Currently, kicad_pcb files have a (version ...) tag, but it is ignored. This
commit does the following:
1. Parse the version. If it's later than the last supported version, present an
alternative error message suggesting an upgrade if the file does not load
correctly. The version will be interpreted as an integer YYYYMMDD to suggest
a KiCad release date.
2. Accept a (version ...) tag also in kicad_mod files, but do not write them
yet. If no version tag is present in these files, assume the version to be that
of the current format version at the time of this commit.
This is meant to be merged to the 4.x stable series, and preps for KiCad 5
which will start emitting version tags also in footprints - users with what
will then be 'old stable' will not get a parse error when we introduce this for
footprints, and we can safely increment the format version later.
2016-05-10 15:07:35 -04:00
Maciej Suminski
35fe82739b
Commented out 'override' keyword due to problems with older swig versions (see bug lp:1579042).
2016-05-10 14:35:36 +02:00
Maciej Suminski
7b669c1b03
Removed remaining traces of KICAD_SKIP_BOOST parameter.
2016-05-10 11:39:13 +02:00
jean-pierre charras
232c068bae
Fix an issue in LOCALE_IO class, used to switch to/back locale "C" when reading/writing files: the back to locale was broken, and created issues in countries using the ',' as fp separator, especially when the non default language was used.
...
It was reported in many bugs.
2016-05-10 09:14:05 +02:00
jean-pierre charras
ec096cc1d2
Fix an issue in LOCALE_IO class, used to switch to/back locale "C" when reading/writing files: the back to locale was broken, and created issues in countries using the ',' as fp separator, especially when the non default language was used.
...
It was reported in many bugs.
2016-05-10 09:11:09 +02:00
jean-pierre charras
bfeb61abef
Fix a few shadowed local variables and deprecated warnings in dialogs (using a very recent wxformbuilder version).
2016-05-10 08:56:03 +02:00
Maciej Suminski
a42cb0ef8c
OpenGL GAL: Set context in destructor when possible (under Linux the window has to be visible).
2016-05-09 18:00:34 +02:00
Maciej Suminski
d8ca03b362
3D viewer: set right OpenGL context before freeing memory.
2016-05-09 17:59:59 +02:00
Maciej Suminski
d9f4877c94
Fixed a crash when starting pcbnew with OpenGL GAL.
2016-05-09 17:23:01 +02:00
Maciej Suminski
ad66af66af
Highlight an item when context menu is displayed (GAL).
2016-05-09 10:41:11 +02:00
Maciej Suminski
ce8f400645
Added menu for locking tracks & vias (GAL).
2016-05-09 10:29:06 +02:00
Maciej Suminski
dd10c577ec
Added SELECTION_CONDITIONS::OnlyTypes() variant that takes KICAD_T[]4
2016-05-04 18:35:20 +02:00
Maciej Suminski
dfa963f31a
Mark locked tracks with 'L' letter in status field.
2016-05-04 16:35:12 +02:00
jean-pierre charras
63decd70e6
Minor fixes: Fix a few shadowed local variables, and deprecated warnings is a few dialogs generated by wxFormbuilder (using a very recent wxFormbuilder version, after apr 25, 2016)
2016-05-06 17:15:30 +02:00
Collin Anderson
08b52131df
Fix beep on hotkey press in OS X
2016-05-05 11:34:16 -04:00
Maciej Suminski
06637a17d6
Added 'Reset Grid Origin' hot key (GAL).
2016-05-04 14:59:14 +02:00
Maciej Suminski
b735f57fa4
Refresh pads after enumeration in Footprint Editor.
2016-05-04 14:06:10 +02:00
Maciej Suminski
f502c4cc77
Fixed stroke text initialization in PCB_PAINTER.
2016-05-04 12:18:25 +02:00
Maciej Suminski
cca36d355a
Remove unnecessary debug messages (OpenGL GAL).
2016-05-04 10:10:15 +02:00
Maciej Suminski
22c4e4d240
Set OpenGL context only when the parent window is visible.
2016-05-03 16:39:58 +02:00
Maciej Suminski
55976e39ef
Fixed crash occuring when a vertex buffer is mapped in invalid OpenGL context.
2016-05-03 16:16:59 +02:00
Maciej Suminski
a62d2b5412
Bigger net labels (GAL).
2016-05-03 15:15:08 +02:00
Maciej Suminski
25fa2bbbbd
Fixed net names drawing in Cairo.
2016-05-03 14:40:47 +02:00
Maciej Suminski
8d952f35c6
Fixed text vertical alignment for bitmap font (OpenGL).
2016-05-03 11:58:48 +02:00
Maciej Suminski
2f874097ae
Fixed a crash in pcbnew (GAL).
2016-05-02 16:15:26 +02:00
Maciej Suminski
09d2d5367a
Store grid settings for GAL.
2016-05-02 16:15:25 +02:00
Maciej Suminski
ed0b95d710
Added an option change grid style. Refactored DIALOG_SET_GRID. GAL can draw grid using lines or dots now. DIALOG_SET_GRID was refactored to use Transfer{From,To}Window() methods.
2016-05-02 16:15:24 +02:00
Maciej Suminski
f3fae70fb2
Removed 'inline' keyword from virtual functions.
2016-05-02 16:15:24 +02:00
Maciej Suminski
58ed0c8cce
Improved grid drawing routine (OpenGL).
2016-05-02 16:15:24 +02:00
Maciej Suminski
2f09e0ee40
Alternative version of CACHED_CONTAINER::defragmentResize() Certain GPUs do not support glCopyBufferSubData(), therefore there is an alternative version working with good, old memcpy().
2016-05-02 16:15:24 +02:00
Maciej Suminski
d23a508aa3
Fixed errors introduced to STROKE_FONT class.
2016-05-02 16:15:23 +02:00
Maciej Suminski
3e3ecccb2b
A few more fixes related to the previous commit.
2016-05-02 16:15:23 +02:00
Maciej Suminski
6e881f51fd
Changed bound buffers to improve compatibility (OpenGL GAL).
2016-05-02 16:15:23 +02:00
Maciej Suminski
0c4b6dabd3
Increased interglyph spacing to avoid artifacts when mipmapping is enabled.
2016-05-02 16:14:26 +02:00
Maciej Suminski
fff3abc9a0
Support for overbars in bitmap fonts (OpenGL GAL).
2016-05-02 16:12:18 +02:00
Maciej Suminski
c506d2b16c
Set OpenGL context before freeing video resources.
2016-05-02 16:12:18 +02:00
Maciej Suminski
59fe8df269
Split bitmap text drawing routine into smaller functions (GAL).
2016-05-02 16:12:18 +02:00
Maciej Suminski
a3a9641ae2
Disable invalidating buffer on CACHED_CONTAINER::Clear(). OpenGL context is not available when the method is called, so it does not work.
2016-05-02 16:12:18 +02:00
Maciej Suminski
031fbb4630
Avoid too frequent message panel updates.
2016-05-02 16:12:17 +02:00
Maciej Suminski
5a8adcdf52
Improved testing/profiling code for CACHED_CONTAINER. Switched from wxLogDebug to wxLogTrace. Adjusted CACHED_CONTAINER_TEST levels required for certain tests. Added a test to check used space in the container.
2016-05-02 16:12:17 +02:00
Maciej Suminski
54f3105cfb
More changes to CACHED_CONTAINER. Removed m_itemSize field (error-prone, as it had to be synchronized with m_item->GetSize()) Fixed a bug in reallocate() method, changed a bit it is behaviour. VERTEX_ITEM is not stored in the item set if its size is 0.
2016-05-02 16:12:17 +02:00
Maciej Suminski
deb578eadd
Recognize a special case of completely filled/defragmented container when resizing.
2016-05-02 16:12:17 +02:00
Maciej Suminski
a9c3a1730b
Free chunks in CACHED_CONTAINER only if they are really not needed.
2016-05-02 16:12:16 +02:00
Maciej Suminski
702be4903f
Vertices are stored in GPU memory (OpenGL GAL).
2016-05-02 16:12:16 +02:00