jean-pierre charras
d0db2de015
Cosmetic enhancement in pcbnew menubar: use specific icon in menuitems to switch canvases, and add a marker to the mode currently in use
2017-01-14 14:43:45 +01:00
Maciej Suminski
88eb648cbb
Alternative way of handling OpenGL initialization & errors
...
Some faults could result in a crash, as they were not properly
handled. Now the rendering loop is wrapped with try..catch block
which will revert to Cairo in case of an error and display an
error message.
Fixes: lp:1655766
* https://bugs.launchpad.net/kicad/+bug/1655766
2017-01-13 16:50:36 +01:00
Maciej Suminski
ca085de6aa
Initialize fields in COMPOSITOR
2017-01-13 16:46:45 +01:00
Maciej Suminski
e0577c0218
checkGlError() may throw exceptions or display an error message
2017-01-13 16:46:02 +01:00
Maciej Suminski
5a7604cbb4
More code formatting
2017-01-13 10:36:59 +01:00
Maciej Suminski
67b0a8c990
Fixed type casting in SHADER class
2017-01-11 17:37:10 +01:00
Maciej Suminski
da00d64877
OpenGL antialising code clean up & formatting
2017-01-11 16:20:37 +01:00
decimad
32a125a767
improve class observable
2017-01-11 16:20:37 +01:00
decimad
5a4e247564
EDA_DRAW_PANEL_GAL now takes the gal display options per dependency injection
...
Add a hack so that the pad properties base dialog constructor can pass in the dependency. Since the derived dialog's constructor takes the parent by this exact type, the static cast is safe.
2017-01-11 16:20:37 +01:00
decimad
e71070fe1b
final touch-ups (license information, includes)
2017-01-11 16:20:37 +01:00
decimad
77138e3702
Add UI control to set up gal opengl antialiasing and load/store the settings
2017-01-11 16:20:37 +01:00
decimad
bbaeeceeac
A model/subscribe helper-class OBSERVABLE to common
2017-01-11 16:20:37 +01:00
decimad
2a8dd508c4
Add smaa (subsample morphological antialiasing)
2017-01-11 16:20:37 +01:00
decimad
02bb410cdb
Refactor COMPOSITOR/OPENGL_COMPOSITOR to enable customization of scene rendering and presentation
2017-01-11 16:20:35 +01:00
decimad
77f9cd0cb0
remove custom shader header generation build-step in favor of c++11 raw string literals
...
rework shader loading code to handle an arbitrary amount of to-be-concatenated strings
2017-01-11 16:20:34 +01:00
decimad
047f52e7cb
Move builtin font resources out of opengl_gal translation unit
2017-01-11 16:20:33 +01:00
John Beard
f1c5b9a9ae
Add context menu to GAL DRAWING_TOOL, including the zone menu
...
Includes a tiny class for scoped set-reset of a variable, which is used
here to store the current drawing mode.
Fixes: lp:1218629
* https://bugs.launchpad.net/kicad/+bug/1518629
2017-01-11 10:41:08 +01:00
Simon Wells
5fee9b2405
Performance counter: use correct std::chrono clock
2017-01-06 09:54:38 -05:00
jean-pierre charras
d56a49d218
Performance counter rework: More comments, code cleaning, and move GetRunningMicroSecs() prototype from common.h to profile.h.
...
profile.h should now contain all info for profiling.
2017-01-02 13:49:36 +01:00
jean-pierre charras
fff449ecf0
Performance counter rework: Add comments, fix coding style issues.
2016-12-31 13:00:24 +01:00
Simon Richter
ac9f858813
Performance counter rework
2016-12-31 12:57:42 +01:00
jean-pierre charras
b8b08dafd6
Code cleaning: remove pcbcommon.* which contains nothing really useful. The very few lines of code are moved to a better place.
2016-12-31 12:56:21 +01:00
jean-pierre charras
a9fbedfb12
More Coverity warnings fixes.
2016-12-30 14:36:23 +01:00
jean-pierre charras
dec2d6e8cc
Fix a few Coverity warnings. A bit of clean code in export_vrml.cpp.
2016-12-30 12:40:05 +01:00
jean-pierre charras
9be5398cd2
Add bitmaps to Align/distribute menu ans menu items
2016-12-20 17:50:29 +01:00
jean-pierre charras
0265a5bac5
Add a specific icon to the Flip board menuitem command
2016-12-13 19:36:17 +01:00
Maciej Suminski
139521750b
Fixed a crash on finishing line drawing in the legacy FP editor
...
Fixes: lp:1649597
* https://bugs.launchpad.net/kicad/+bug/1649597
2016-12-13 17:25:34 +01:00
Maciej Suminski
c8676db84e
Fixed panning & cursor control with arrow keys in flipped view
2016-12-12 16:45:52 +01:00
Maciej Suminski
3ea8f12555
Handle flipped view text rendering for Cairo
2016-12-12 16:45:52 +01:00
Maciej Suminski
effc8bebb1
Store view flip setting between canvas changes
2016-12-12 16:45:52 +01:00
Maciej Suminski
7ad5fca6de
More code formatting, updated copyright headers
2016-12-12 16:45:52 +01:00
Maciej Suminski
8afae179ab
convert_to_biu: Changed defines & functions to constexpr
2016-12-12 16:45:52 +01:00
Maciej Suminski
a2a950fdae
Reduced the Cairo command entry size
2016-12-12 16:45:52 +01:00
Maciej Suminski
660e4ca9d4
Cairo group arguments are stored in a union.
2016-12-12 16:45:52 +01:00
Maciej Suminski
c96db4f5c4
Removed aCreateUndoEntry flag from COMMIT::Push()
...
It was not used anywhere and COMMIT should handle creating
undo buffer entries.
2016-12-12 16:45:52 +01:00
Maciej Suminski
89055c4425
Code formatting
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
da28e163d2
Optimizations/fixes to the VIEW/GAL classes:
...
- much faster Cairo rendering (outperforms legacy)
- improvements in VIEW update handling
- fixed issue with grid rendering in flip view mode
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
3f7c5a0845
fixed post-rebase issues
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
c661c30f68
pcbnew: added flip view mode
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
1c1f4e9a50
Refactoring of VIEW/VIEW_ITEM classes:
...
- Remove dependency of EDA_ITEM on VIEW
- VIEW_ITEM is now a pure virtual interface
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
27a10e8597
Multiple simplifications to GAL tools in PCBNew:
...
- Finalize transition to BOARD_COMMIT (removed all remaining uses of PICKED_ITEMS_LIST) and implicit view/ratsnest updates
- Simplified SELECTION class, it now can be directly added to a VIEW
- Removed unnecesary casts and templates
- Introduced C++11 features (range based for, lambdas) where they improve code readability
- Added non-undoable COMMITs, which can be used to propagate change notifications to interested listeners (e.g. ratsnest/view)
2016-12-12 16:45:52 +01:00
Tomasz Włostowski
470ccafaeb
Added C++ wrapper for prof_counter
2016-12-12 16:45:52 +01:00
Tomasz Wlostowski
5476e97bfa
Pcbnew: fix segfault when importing netlist with no footprint assignments.
...
Fixes lp:1647803
https://bugs.launchpad.net/kicad/+bug/1647803
2016-12-10 10:20:21 -05:00
Maciej Suminski
524dddaf70
Sync the PNS model when its changed
2016-11-28 15:51:18 +01:00
jean-pierre charras
c225af747f
mathplot: fix a bug and remove unused variables ( it fixes a few compil warnings) from Coverity analysis.
...
Uncrustify mathplot.h and fix a few coding style issues.
2016-11-28 14:18:22 +01:00
jean-pierre charras
30df041de6
fix shadowed local variables
2016-11-25 18:17:34 +01:00
jean-pierre charras
fe3c72b6de
Remove duplicate definitions only needed only by old python wizards. No more useful in master branch, since a long time.
2016-11-25 13:30:11 +01:00
unknown
334c50477a
Auto save: fix case of auto save interval is set to 0 (disabling auto save feature)
...
This fix allows also the new value of the auto save interval immediately taken in account.
2016-11-22 11:26:31 +01:00
Wayne Stambaugh
64c892ee23
Make footprint ID into a generic library ID.
...
Rename FPID to LIB_ID as is now used as a generic library identifier and
is no longer specific to footprints.
Remove all mention of footprint from the new LIB_ID doxygen comments and
code.
Rename files fpid.h and fpid.cpp to lib_id.h and lib_id.cpp.
Rename fp_lib_table.keywords file to lib_table.keywords and adjust CMake
build dependencies accordingly.
Update all source files effected by the code and file name changes.
Update .gitignore for file name changes.
2016-11-20 18:35:08 -05:00
Wayne Stambaugh
40e93d263d
Split out library table common code into separate source files.
2016-11-20 13:34:03 -05:00
Wayne Stambaugh
888c5d2a97
Change boost header file in an attempt to make clang happy yet again.
2016-11-19 19:42:43 -05:00
Wayne Stambaugh
2bfce154cc
Add boost header file in an attempt to make clang happy.
2016-11-19 19:18:12 -05:00
Wayne Stambaugh
b9c296420a
Complete library table and library table row refactor.
...
Derive LIB_TABLE_ROW from boost::noncopyable for use in boost pointer
containers.
Use std::unique_ptr to manage PROPERTIES pointer.
Add clone support for boost pointer containers.
Split common library table code out from FP_LIB_TABLE into base LIB_TABLE
object. The FP_LIB_TABLE object only contains the code specific to
footprint library tables.
Use boost::vector_ptr for storing library table row objects.
Fix move up and down bugs in footprint library table edit dialog.
2016-11-19 17:16:43 -05:00
jean-pierre charras
07e2ccdb59
Eeschema: cosmetic enhancement.
2016-11-19 09:05:58 +01:00
jean-pierre charras
682c15ed62
Add connection highlight to eeschema, step 2: Fixes, refinements, add hot key, cleanup code.
2016-11-16 13:09:34 +01:00
Marvin Schmidt
66aee09388
Add missing include in kicad_string.h
...
Without this include the HAVE_STRTOKR define won't be available to
the preprocessor and the strtok_r function will be declared
unconditionally and eventually clash with the declaration from the
system provided equivalent.
2016-11-07 12:36:42 -05:00
jean-pierre charras
c7fcb2695c
Add a specific bitmap for show electrical type option (component editor and component viewer)
2016-11-04 13:59:45 +01:00
Wayne Stambaugh
192d4b87ad
Rework footprint library table for use in symbol library table.
...
Factor out ROW object from FP_LIB_TABLE so it can be reused to create a
symbol library table row object.
Create base LIB_TABLE_ROW object from ROW object common code.
Derived FP_LIB_TABLE_ROW object from LIB_TABLE_ROW to provide support for
footprint library table rows.
Update all instances of FP_LIB_TABLE::ROW with FP_LIB_TABLE_ROW.
Purge wxT() macros from modified files where possible.
2016-10-28 09:12:28 -04:00
jean-pierre charras
89f9b7df5c
Pcbnew: when update PCB from schematic, spread footprints also in legacy mode. Remove also one useless undo command level after update.
2016-10-25 15:34:59 +02:00
decimad
402f53a302
update font code along with the changes done in the msdf atlas tool (use codepoint spans and refined char placement)
...
add font coordinate system clarification drawing (svg)
2016-10-20 14:31:09 +02:00
Tomasz Włostowski
bb20a7f592
common: remove dependency on libbitmaps in EDA_ITEM::GetMenuImage()
2016-10-19 17:54:00 +02:00
Wayne Stambaugh
129fa52b65
CvPcb: remove broken footprint documentation feature.
...
At one point, all of the footprints provided by the KiCad footprint
libraries were merged into a single pdf file. The link to open this
file was provided on the toolbar. Since the footprint libraries have
been split out into individual repositories, this file is no longer
created so the toolbar button and the underlying code to open this
file were removed.
Improve a few CvPcb menu strings.
Fixes lp:702785
https://bugs.launchpad.net/ubuntu/+source/kicad/+bug/702785
2016-10-11 15:08:40 -04:00
Cirilo Bernardo
48ed9f080e
Add Help Menu item to open browser at kicad-pcb.org/contribute
2016-10-10 19:01:45 -04:00
jean-pierre charras
89914fa9de
Fix 2 Coverity warnings.
2016-09-26 19:58:32 +02:00
Maciej Suminski
1420a0179f
Removed deprecated pragmas to mute warnings
2016-09-26 14:53:43 +02:00
Simon Richter
ad088db6d2
Add more "override" markers.
2016-09-25 13:59:41 -04:00
jean-pierre charras
48c18604fc
Layers manager: add (in context menu) show all layers and hide all layers, and code cleanup.
2016-09-25 13:08:04 +02:00
Simon Richter
59c81976dc
Explicitly mark overriding functions.
2016-09-24 14:53:15 -04:00
Maciej Suminski
3623421912
Fixed a PNS crash after undoing the last operation while routing
2016-09-23 13:58:33 +02:00
decimad
6a9c1cb6a1
Split the undo/redo event into the two stages "pre" and "post" for convenient synchronization of dependent state.
2016-09-23 13:29:25 +02:00
Cirilo Bernardo
33948e572d
Added STEP Export menu item and supporting code
2016-09-22 08:37:16 -04:00
Dick Hollenbeck
29be200843
Add SWIG support for NETCLASSPTR. Reduce SWIG visibility from C++ headers.
2016-09-21 19:52:04 -04:00
Simon Richter
eeae8c741a
Synchronize forward declaration with definition
...
The actual definition uses "class", so the forward declarations should do
so, too.
2016-09-21 16:35:00 -04:00
decimad
ee3d75f273
Add coroutine call invocation context to identify the main stack frame.
...
Run the text draw-tool on the main stack frame.
Fixes: lp:1547282
* https://bugs.launchpad.net/kicad/+bug/1547282
2016-09-21 11:56:40 +02:00
Dick Hollenbeck
7311f07eaf
SWIG Improvements
...
*) Extend SWIG support deeper into the BOARD class.
*) Move swig *.i files into a directory identified for SWIG, in preparation
for a parallel universe involving Phoenix's SIP.
*) Move swig files which will be common to both eeschema and pcbnew into
common/swig.
*) Sketch out a "common" python module, and plan on dovetailing that into a
libkicad_shared.{dll,so}
*) Add common/swig/ki_exceptions.i and define a macro HANDLE_EXCEPTIONS()
which is to be applied to any function which needs C++ to python
exception translation.
*) Move the test for SWIG tool into top level CMakeLists.txt file for use
in all python modules beyond pcbnew, i.e. eeschema and common.
*) Add SWIG_MODULE_pcbnew_EXTRA_DEPS which generates a better Makefile, one
which rebuilds the swig generated *.cxx file when one of its dependencies
change.
*) Re-architect the board.i file so that it can be split into multiple *.i
files easily.
*) Make some KIWAY from python progress, in preparation for Modular KiCad
phase III.
2016-09-20 11:59:43 -04:00
Dick Hollenbeck
9ad49dc2d1
Split IO_ERROR out of richio.* and store Problem() and Where() separately
2016-09-20 11:56:18 -04:00
jean-pierre charras
3f104448df
Rename libedit_icon to icon_libedit, bo be consistent with other icon names.
2016-09-20 13:23:17 +02:00
jean-pierre charras
6edee2ae1d
Prepare Plot Gerber file to include advanced aperture and net attributes.
...
This option is not yet activated because the net attributes are not yet fully fixed by Ucamco, in Gerber file format specifications.
(To activate it, see dialog_plot.cpp, line 43)
2016-09-19 13:01:36 +02:00
Maciej Suminski
516510774c
Fixed ratsnest for nodes surrounded with zones
2016-09-13 17:13:42 +02:00
Maciej Suminski
03f4a89521
More descriptive method names for RN_NODE
2016-09-13 10:06:25 +02:00
Maciej Suminski
694aa7ff5b
Handle pad autonumbering when the number set is empty.
2016-09-12 13:45:57 +02:00
Maciej Suminski
6481ff75c9
Changed one of COMMIT::Stage() methods to COMMIT::Modified()
2016-09-12 13:45:57 +02:00
Maciej Suminski
65b1225231
Added CHT_DONE flag to COMMIT::Stage to skip add/remove step
2016-09-12 13:45:57 +02:00
Maciej Suminski
6701b80f77
Converted global deletion, global text size setting & module exchange to BOARD_COMMIT.
2016-09-12 13:45:57 +02:00
Maciej Suminski
74d53e517c
VIEW_GROUP objects redraw itself after a change
2016-09-12 11:50:06 +02:00
Maciej Suminski
acd7214586
Moved commit.h to 'include' directory
2016-09-12 11:50:06 +02:00
Maciej Suminski
b5bfa14057
Removed unused EDA_ITEM::m_Image field.
2016-09-12 11:50:06 +02:00
Maciej Suminski
1dd43d1d98
Unified undo buffer handling code for PCB & module editor.
...
Replaced UR_MODEDIT with UR_CHANGED.
2016-09-12 11:50:06 +02:00
Maciej Suminski
b897c5f290
BOARD_ITEM_CONTAINER class.
2016-09-12 11:50:06 +02:00
Maciej Suminski
09e0311d4e
Replaced Copy() method with operator=. Removed Copy() where default copy ctor was enough.
2016-09-12 11:50:06 +02:00
Maciej Suminski
f95628c132
Switched to default constructor and operator= for EDA_TEXT.
2016-09-12 11:50:06 +02:00
Ian Roth
7ad2f37391
Add %L formatter to worksheets to print layer name.
2016-09-10 14:23:59 -04:00
Chris Pavlina
4b6d28333e
Revert "Memoize SHAPE_LINE_CHAIN bounding box computation"
...
This reverts commit 30566de69a
, which
caused some issues in PNS.
2016-09-01 12:09:06 -04:00
jp-charras
26b1c732de
Simulator: add simulator icon, and colored icons to identify more easily traces in trace list and cursor list.
2016-08-29 11:39:54 +02:00
jean-pierre charras
9f46d83175
Gerbview: locate item now does not take in account not visible layers. Remove an unused file
...
3d viewer: Remove a few ToUTF8() bad usage (replaced by GetData() )
2016-08-19 09:45:59 +02:00
Maciej Suminski
630d5e04fe
Ratsnest NODE stores its parents in a set instead of a list
...
It happens that the same parent is assigned multiple times, but then removed once, causing ratsnest artifacts.
2016-08-18 17:17:52 +02:00
Simon Richter
bfb6e0bbb2
Convert remaining occurences of stri[n]cmp to str[n]casecmp.
...
This also reverses the substitution logic if strcasecmp is missing (config.h.cmake)
2016-08-16 10:27:09 +02:00
jean-pierre charras
f1226afc89
Gerbview: support of %TA.AperFunction (aperture attribute) and better support of %TO (currently work in progress) object attribute.
2016-08-16 12:56:20 +02:00
Maciej Suminski
2f4c9b7263
Do not mark wxMathPlot docs as the main Doxygen page
2016-08-16 09:49:39 +02:00
jean-pierre charras
01d3c72dda
Cosmetic enhancement: add a dismiss icon to clarification menu "title" (the "title" is also the close menu command)
2016-08-15 20:22:54 +02:00