Dick Hollenbeck
c4ce6d9ab1
Speed up DSNLEXER::findToken() to such an extent that it resulted in an approximate 13% reduction
...
in *.kicad_pcb file loading times.
2013-06-30 20:05:40 -05:00
Maciej Sumiński
fa083142a7
Colors are stored as unsigned bytes instead of floats.
2013-06-30 22:45:31 +02:00
Karl Thorén
8aa8451434
All: Fix bug #1196277 (pcbnew does not save all parts of the title block to the kicad_pcb file)
2013-06-30 19:40:33 +02:00
Maciej Sumiński
a1f81bbe97
Shaders are built-in instead of being loaded from external files.
2013-06-30 19:31:16 +02:00
Maciej Sumiński
e9669c6594
More debug information in case of failure compilation of shaders.
2013-06-30 15:37:46 +02:00
Maciej Sumiński
690e7144c1
Made shaders compatible with Intel GPUs.
2013-06-30 15:37:35 +02:00
jean-pierre charras
a53b3d496c
Replace in EDA_TEXT::Draw the parameter EDA_DRAW_PANEL* aPanel by EDA_RECT* aClipBox, which is the actual parameter used by Draw.
...
This change make more easy to use this function when a EDA_DRAW_PANEL canvas is not used to draw texts.
Remove dead code in worksheet.cpp.
2013-06-29 11:52:22 +02:00
Wayne Stambaugh
be7f436951
Prevent GTK printing build error on Linux
...
* Do not fail to build when wxWidgets is built with either --with-gnomeprint
or --with-gtkprint are not configured. Only display warning.
* Move warning code from include/common.h to common/common.cpp so it only
shows the warning once instead of every source file that includes common.h
2013-06-28 12:29:39 -04:00
Maciej Suminski
95d5ab706a
VBO_CONTAINER: Changed new[]/delete[] pairs to realloc(), possibly reducing memory fragmentation and the container shrinking time.
2013-06-28 10:47:41 +02:00
jean-pierre charras
fad35e7e00
Minor fixes. Gerbview: fix a collision name for GetLayout method.
2013-06-27 21:12:01 +02:00
Maciej Suminski
009925724e
Minor code cleaning.
2013-06-27 17:31:10 +02:00
Maciej Suminski
96116659be
Faster circles & semicircles drawing for the shaderless OpenGL backend. Removed unnecessary variables and computations.
2013-06-27 16:05:15 +02:00
Maciej Suminski
1e7df3606a
Groups are stored in map instead of deque, so it allows easier adding & removing.
2013-06-27 11:54:49 +02:00
Maciej Suminski
603029b106
High contrast mode with showing the selected layer on the top.
2013-06-26 16:31:52 +02:00
Maciej Suminski
4ca54b2f1d
Small speed up for the color change function (OpenGL_GAL).
2013-06-26 10:43:58 +02:00
Maciej Suminski
258b804941
Added possibility to change cached layer color (for the purpose of high contrast display).
2013-06-25 17:12:54 +02:00
Maciej Suminski
dbb4e67737
Fixed warning about a not initialized variable.
2013-06-25 16:54:30 +02:00
Maciej Suminski
ec1a5d1318
Added zoom in, zoom out & fit on screen view commands handling in GAL.
2013-06-25 09:15:57 +02:00
Maciej Suminski
cdab6cfdbe
Draw the origin marker in OpenGL with shaders GAL.
2013-06-24 16:02:18 +02:00
Maciej Suminski
33b3d5edfb
Small improvements to SHADER class.
2013-06-24 15:40:31 +02:00
Maciej Suminski
e1aa6f7e84
Grid settings apply to GAL based rendering.
2013-06-24 14:33:02 +02:00
Maciej Suminski
9e937f8113
Added convertsion from wxColour to COLOR4D.
2013-06-24 10:32:08 +02:00
Maciej Suminski
d114d9e386
Passing COLOR4D parameter using constant reference.
2013-06-24 10:21:34 +02:00
Maciej Suminski
4e8d1366b6
Added conversion from EDA_COLOR_T to COLOR4D.
2013-06-24 10:12:36 +02:00
Dick Hollenbeck
577229bb6e
Support for 'initial single line comments' in the pretty footprint format.
...
This is limited to round tripping the lines of commented text in the
loading and saving to disk through PCBIO::Format() and PCBIO::Parse().
No editing of the comments is given.
2013-06-23 14:18:33 -05:00
Maciej Suminski
bf7d383066
Changed atan2() to VECTOR2D::Angle()
2013-06-21 09:01:40 +02:00
Maciej Suminski
fdc52d933a
Fixed some minor rendering issues, mostyl for shaderless OpenGL GAL.
2013-06-20 16:37:21 +02:00
Maciej Suminski
316f7309a1
Bug fixes:
...
- VBO_CONTAINER::allocate() was returning wrong value in case of error
- framelimiter had wrong formula for computing destined period between frames
- removed _padding field from VBO_VERTEX, as it was not speeding up, but wasting memory
2013-06-20 13:16:12 +02:00
Maciej Suminski
ff75a28080
Added a framerate limiter.
...
Now it does not use all the CPU power while panning even on simple boards.
2013-06-20 09:58:18 +02:00
jean-pierre charras
e7b5e816d0
Pcbnew: netlist dialog: add silent mode option, and tool tip to the 2 options (dry run and silent mode)
...
dialog_display_info_HTML_base: derived now from dialog_shim.
2013-06-19 18:11:12 +02:00
Maciej Suminski
585aeb7f91
Moved fields containing information about currently used color, shader and transformation for vertices from VBO_ITEM to VBO_CONTAINER (OPENGL_GAL).
2013-06-19 10:50:46 +02:00
Maciej Suminski
c4e42f46a9
Removed unnecessary functions from VBO_VERTEX.
2013-06-18 17:53:12 +02:00
Maciej Suminski
bff4d1239c
Removed unnecessary casting from VIEW_ITEM to EDA_ITEM. Added Type() function to VIEW_ITEM.
2013-06-18 17:01:23 +02:00
Maciej Suminski
8a89e160ed
Added VBO_CONTAINER as a faster storage for vertices (OPENGL_GAL), tuned for exchanging data with GPU.
...
Removed a few unnecessary variables and fields from OPENGL_GAL.
Added function GAL::ClearCache() for freeing memory used by cached items.
Fixed a few memory leaks (tesselator, PAINTER's settings & VIEW_ITEM's groups).
Changed a few functions into inlines.
2013-06-18 16:20:29 +02:00
Maciej Suminski
198052358e
Added GAL_TYPE_NONE as an indicator of GAL uninitialized state.
2013-06-18 16:19:30 +02:00
Dick Hollenbeck
82d667e30c
various
2013-06-13 06:43:29 -05:00
Alexander Lunev
29b0b9cfcd
Fix pcad2kicad issue, from A. Lunev, and a minor code cleaning in component_references_lister.cpp.
2013-06-12 21:43:22 +02:00
jean-pierre charras
93ae8f4066
Fix issue in auto panning while moving in EDA_DRAW_PANEL::OnMouseLeaving()
2013-06-10 15:23:58 +02:00
Dick Hollenbeck
8470c44bb0
fix autopan non-response problem when dragging block to right or bottom
2013-06-09 13:14:01 -05:00
jean-pierre charras
4c75540ca2
Remove a useless message shown only in debug mode, about page layout file not found
2013-06-09 18:50:57 +02:00
jean-pierre charras
91452f3b58
Custom page layout: add support for poly-polygons (useful for logos)
2013-06-08 20:19:09 +02:00
jean-pierre charras
0038722d0f
Fix compil issue on wxWidgets 2.8.12, created by my last commit.
2013-06-07 19:35:09 +02:00
jean-pierre charras
6a00664b2a
Plot files : fix Bug #1188664 (full filename instead of short file name, and swapping between sheet path and file name)
2013-06-07 18:37:44 +02:00
Wayne Stambaugh
2956543d27
CvPcb pin count filtering improvement. (fixes lp:1188325)
...
* Add option to MODULE::GetPadCount() to exclude non-plated through holes.
2013-06-07 09:17:52 -04:00
Wayne Stambaugh
0fcf722af4
Fix CvPcb library filtering bug. (fixes lp:1188321)
2013-06-07 08:15:32 -04:00
jean-pierre charras
1b05af7f8e
page layout: if the environment variable KICAD_WKSFILE points a S expr page layout descr, this descr is used instead of internal descr. Mainly for testing purposes.
...
Eeschema, dialog edit component: minor enhancement (the last selected notebook page is remembered during a session)
2013-06-07 11:49:36 +02:00
jean-pierre charras
123b7b5537
Page layout: add comments, and fix a very minor issue.
...
Eeschema, dialog netlist: fix a bug when removing a plugin panel, when is is not the last.
dialog netlist:Add a predefined command string for python scripts, when creating a new netlist plugin entry.
2013-06-06 20:03:29 +02:00
Maciej Suminski
5c405a6f40
Removed some debug messages.
2013-06-06 11:54:37 +02:00
Maciej Suminski
03b5d6125b
Removed indices storing from VBO_ITEM as they are always consecutive numbers. Removed storing pointers to VBO_ITEMs that have to be drawn - instead they are memcpied to mapped GPU memory.
...
Some functions of VBO_ITEM became inline.
2013-06-06 11:52:39 +02:00
jean-pierre charras
c48997608d
Fix a minor issue in page layout default descr.
2013-06-05 17:32:24 +02:00
Dick Hollenbeck
8a5285db41
downloads-by-cmake now configurable, fix wx2.8 compiler errors
2013-06-05 09:24:03 -05:00
jean-pierre charras
c4d6fc943a
Add info and comments about page layout description using S expressions
2013-06-05 15:21:14 +02:00
jean-pierre charras
3655df08ea
All: use a S expression to describe the page layout (title block and grid references). Work in progress.
...
This should allow users to define their own page layout.
2013-06-05 14:03:16 +02:00
Maciej Suminski
7858e6aa7c
Changed data structure in VBO_ITEM.
2013-06-05 10:48:30 +02:00
Maciej Suminski
c909988aa5
Upstream merge.
2013-06-05 10:01:53 +02:00
Dick Hollenbeck
5deaba9669
Fix wierd ConfigBaseWriteDouble's Printf( wxT("%12f"), aValue ); format string
...
which was creating silly strings like
PcbTextThickness=" 0.300000"
in kicad.pro files.
2013-06-04 09:44:21 -05:00
Dick Hollenbeck
f162b6662b
comment
2013-06-04 09:44:08 -05:00
Maciej Suminski
2d5f342ee8
Switching to OpenGL using shaders backend on the fly (changed keyboard shortcuts: different backends are available using Alt+F9..F12).
2013-06-04 16:18:33 +02:00
Maciej Suminski
85a2aee79c
Introducing shaders.
...
Shader's parameters are stored in VBO_ITEM. Changed VBO_ITEM data structure. Added UseShader() function for selecting shader for a given VBO_ITEM.
Added one main vertex & fragment shader program to be used for with all kinds of items (type of shader is selected using attributes that are stored in VBO). Currently available shaders are: at-least-1px-width line, filled circle and stroked circle.
Removed unnecessary param (aDepthOffset) from a few functions (OPENGL_GAL::drawSemiCircle(), OPENGL_GAL::drawLineCap()). Removed function OPENGL_GAL::DrawRoundedSegment(). Changed some asserts to debug info or error log.
2013-06-04 15:58:53 +02:00
Dick Hollenbeck
a4cc671c22
speedups
2013-06-03 08:09:37 -05:00
Maciej Suminski
2912138ef2
Display linking errors in debug mode for shaders. Added SHADER::GetAttribute() function for getting shaders attribute location.
2013-06-03 10:54:24 +02:00
Dick Hollenbeck
51ad0c18ff
*) Refinements to ExternalProject_Add( boost )
...
*) Enhancements to make_lexer().
*) Support multi-threaded build.
*) Switch to "bzr patch" from patch.exe for Windows users.
2013-05-31 16:36:40 -05:00
Dick Hollenbeck
edfb5811cf
*) Refinements to ExternalProject_Add( boost )
...
*) Enhancements to make_lexer().
*) Support multi-threaded build.
*) Switch to "bzr patch" from patch.exe for Windows users.
2013-05-31 16:22:34 -05:00
Dick Hollenbeck
38862c1a09
add support for exponents in dsnlexer.cpp's DSN_NUMBER token
2013-05-31 09:24:56 -05:00
Dick Hollenbeck
264c73747a
factor out isNumber() in dsnlexer.cpp, add support for numbers with exponents, leave commented out for further testing
2013-05-30 20:20:37 -05:00
Dick Hollenbeck
5e53e410ce
factor out isNumber() in dsnlexer.cpp, add support for numbers with exponents, leave commented out for further testing
2013-05-30 19:49:22 -05:00
jean-pierre charras
4d0f664f50
Pcbnew: Fix Bug #1185556 . fix issue about Solder Paste Ratio value which was accepting only one digit in mantissa in 3 dialogs (now 6 digits in all dialogs).
...
fix potential issue in .kicad_pcb file creation, in some places where a %g or %.16g format was used:
al least under Mingw/gcc4.7.2, the floating number was written using scientific notation, not accepted by the S-expr reader.
2013-05-30 21:32:00 +02:00
Wayne Stambaugh
08bdaf07be
More Pcbnew footprint library table work in progress.
...
* Add footprint library table loading to footprint editor.
* Overload FOOTPRINT_INFO::ReadFootprintFiles() to read footprints from the
footprint library tables.
* Fix a bug in FP_LIB_TABLE::IsEmpty() when the table has a fallback table.
* Add code to FOOTPRINT_EDIT_FRAME to use footprint library tables.
* Add an optional build time version of PCB_EDIT_FRAME::loadFootprints() to
populate netlist footprints from footprint library table.
* Remove adding footprints to board whenever GetModuleLibrary() is called and
move loading locally as required.
* Add missing source file license comments and coding policy fixes.
2013-05-28 12:54:59 -04:00
jean-pierre charras
832764aa3a
Dialog page setting: replace wxStaticBoxSizer by wxBoxSizer + static text,
...
because under Linux and wxWidgets 2.9, wxStaticBoxSizer are very ugly (text not readable in this dialog)
(Does not happen with wxWidgets 2.8)
Eeschema hotkeys: remove duplicate keys in key editor.
2013-05-28 11:49:53 +02:00
jean-pierre charras
43c87d0cb6
eeschema: fix Bug #1184318 (Eeschema-Libedit: Reference moving+zooming issue)
...
and fix a minor issue in netlist dialog.
2013-05-28 10:05:10 +02:00
jean-pierre charras
90eb83dcb2
Pcbnew: fix bug Bug #1184362 (Pcbnew losing user (custom) sheet size )
...
Fix minor issues in print/plot: filename not printed, sheetname incorrect in eeschema
2013-05-27 11:17:37 +02:00
Maciej Suminski
31b722f9d3
Added tesselation of polygons for VBO based rendering (OpenGL GAL).
2013-05-27 09:37:49 +02:00
Dick Hollenbeck
e3351a9686
1) Add "rules" to base of tree for copying into BZR_HOME/rules.
...
File "rules" has instructional text as comments near top.
2) Convert all text files in repo to LF line ending form.
Any checkout done with "rules" in play will convert the working
tree to native line ending, while keeping repo as LF line ending.
2013-05-25 23:36:44 -05:00
jean-pierre charras
3b023da602
Cvpcb fix bug #1183796 and fix bug when a fp lib is not found : the name of the missing file was not displayed in message window.
2013-05-25 17:02:16 +02:00
jean-pierre charras
5136fc535f
3D viewer: fix Bug #1183581 (pcbnew 3D viewer: recent UI inconsistency )
...
Pcbnew: fix bug in drag module: connected tracks were not dragged.
worksheet: code cleaning.
2013-05-25 11:01:44 +02:00
jean-pierre charras
2703a5aebd
Fix bug #1183802 : incorrect sheet Id (company name displayed instead of Id)
2013-05-24 16:06:58 +02:00
jean-pierre charras
4bdd21b281
More about worksheet code.
2013-05-24 10:59:40 +02:00
Lorenzo Marcantonio
499d41206e
Make title block date field modifiable by hand.
2013-05-23 14:45:23 -04:00
jean-pierre charras
ece008e790
Worksheet code: more cleanup, and fix compil issue with wxWidgets 2.8
2013-05-23 18:38:17 +02:00
jean-pierre charras
afccbbe04d
worksheetcode cleaning and fix plot sheet filename bug under Linux.
2013-05-22 17:08:57 +02:00
jean-pierre charras
a4cec09781
Worksheet code: cleanup and remove useless parameters.
2013-05-22 10:45:25 +02:00
jean-pierre charras
39c3a38e2d
Remove duplicate code to draw and to plot title blocks.
2013-05-21 09:18:25 +02:00
Wayne Stambaugh
699897ddf8
Pcbnew footprint library table work in progress.
...
* Add code for loading, modifying, and saving the global and project
footprint library tables.
* Add code to load MODULE objects using the footprint library table to
the footprint viewer.
* Add static methods to FP_LIB_TABLE to support loading footprint library
tables.
2013-05-20 10:49:20 -04:00
jean-pierre charras
00d3af4816
Code cleaning and move worksheet code specific to title block and frame references shape in title_block_shapes.h and title_block_shapes_gost.h
2013-05-19 21:35:49 +02:00
Maciej Suminski
7dec942ef7
Different way of rendering groups (with a single DrawElements call) in OpenGL GAL.
2013-05-16 18:43:25 +02:00
Maciej Suminski
1d0ca22572
Different way of measuring render time.
2013-05-16 17:17:35 +02:00
Dick Hollenbeck
a6decc3cc7
compiler warning from mailing list
2013-05-16 09:40:46 -05:00
Maciej Suminski
b58cc107e6
Changed functions for adding vertices in VBO mode to make code easier to read and understand.
2013-05-16 14:47:34 +02:00
Maciej Suminski
a593306a06
Fixed time measuring functions (only for profiling in debug)
2013-05-16 13:46:00 +02:00
Maciej Suminski
0177590699
Faster way of caching items for OPENGL GAL.
2013-05-16 10:35:16 +02:00
Maciej Suminski
787fe28fd0
Added functionality for transformation of VBO vertices, extended functions like translate, rotate, scale using glm library. Removed D() macro, as it was not used, but in conflict with glm library. Added VBO_ITEMs for circles, semicircles. Now almost everything is drawn using VBO (besides polygons and grid).
2013-05-15 16:48:10 +02:00
Maciej Suminski
541568e09f
Layer depth is set during items caching (so now they are rendered on proper layers).
2013-05-15 16:47:17 +02:00
Maciej Suminski
5dd7ef6895
Assured that there are no excessive initializations
2013-05-15 16:47:01 +02:00
Maciej Suminski
d76671a601
Items are not recached until GAL is changed (earlier it was done on every rendering backend switch).
2013-05-15 09:17:42 +02:00
Maciej Suminski
ea094a4fbc
Added some debug informations.
2013-05-15 09:17:36 +02:00
Maciej Suminski
817cf192c8
Fixed build for eeschema.
2013-05-14 10:46:43 +02:00
Maciej Suminski
aec00ab96f
Removed double freeing of some of Cairo paths.
2013-05-14 10:42:56 +02:00
Maciej Suminski
48b288cdc2
Modified SetOffset (VBO_ITEM/OpenGL GAL) function.
2013-05-14 10:41:05 +02:00
Maciej Suminski
66d257f620
Drawing tracks using PushVertices, added some comments, fixed formatting.
2013-05-14 10:38:25 +02:00
Maciej Suminski
918231795b
Added possibility of adding multiple vertices to VBO_ITEM at once
2013-05-13 11:14:35 +02:00