Maciej Suminski
a4a2196cc2
Fixed profiling timers for compilation under Win32 (and hopefully Mac OS too).
2013-07-26 14:35:31 +02:00
jean-pierre charras
076defb0a5
Pl_Editor: title block texts can be multiline (use" \n" : a '\' followed by a 'n' to create a new line inside a text)
...
Very minor code cleaning.
2013-07-25 20:58:46 +02:00
Maciej Suminski
76660ff15b
Fixed high contrast mode in OpenGL. Split display settings loading into more appropriate places.
2013-07-25 18:04:15 +02:00
Maciej Suminski
60471ecc1e
Added a layer compositor for the Cairo backend.
2013-07-25 14:40:04 +02:00
jean-pierre charras
9e68ba1ea3
Very minor code cleaning
2013-07-24 20:34:28 +02:00
jean-pierre charras
7f6787c8b8
Pl_Editor: add some hot keys. Fix some rounding issues.
2013-07-24 17:11:35 +02:00
Maciej Suminski
8c74dcde28
Fixed blending function for OpenGL compositing. Corrected documentation, removed unnecessary functions.
2013-07-24 15:06:59 +02:00
Maciej Suminski
e644f5be05
OpenGL multitarget rendering (compositing).
2013-07-23 18:39:07 +02:00
jean-pierre charras
7007601655
Fix an issue in Debug mode
2013-07-23 12:35:58 +02:00
jean-pierre charras
919edcf1e1
Bug #1202761 (Off centre zoom )
2013-07-22 20:38:04 +02:00
jean-pierre charras
cf9d1ba541
Fix GOST compatibility.
2013-07-22 18:45:22 +02:00
Maciej Suminski
d6628419c9
Changed rendering order of cached & noncached layers.
2013-07-22 13:14:53 +02:00
Maciej Suminski
75eb5491d5
Code refactorization. VBO_CONTAINER is split to [NON]CACHED_MANAGER, GPU_MANAGER and VERTEX_MANAGER.
2013-07-22 10:41:12 +02:00
jean-pierre charras
9f22c35519
Add margin values control in pl_editor, and remove margin definition from class PAGE_INFO.
2013-07-20 21:36:19 +02:00
jean-pierre charras
fdbdb76c39
Initial release of pl_editor, the page layout and title block editor.
2013-07-19 20:27:22 +02:00
Maciej Sumiński
769bf51359
Headers containing shader program sources are generated using CMake.
2013-07-17 23:55:59 +02:00
Maciej Suminski
c81c316a46
Refactorization of VBO_CONTAINER.
2013-07-17 18:49:38 +02:00
Maciej Suminski
e5192ceddd
Fixed wrong memory freeing.
2013-07-17 14:16:37 +02:00
Maciej Suminski
1d582a515c
Added an interface for highlighting.
2013-07-17 10:21:46 +02:00
Maciej Suminski
a4a6064316
Fixed stroked circles width issue with OpenGL shaders.
2013-07-17 10:21:29 +02:00
Maciej Suminski
3cedadd738
Fixed OpenGL tracks transparency & netnames issue.
2013-07-16 15:44:08 +02:00
Maciej Suminski
3ba2d4428b
Added support for multiple active layers (colored ones in the high contrast mode).
...
Added separate layers for pad netnames (now these are divided into multilayer/top/bottom pads).
More appropriate layers are selecting a copper layer in the high contrast mode (now it shows the copper layer itself, vias & multilayer pads and netnames).
2013-07-16 13:40:53 +02:00
Maciej Suminski
2b3d6075e2
1 pixel wide outlines for the Cairo and the OpenGL with shaders backends, but it breaks displaying outline in the shaderless OpenGL backend.
2013-07-16 09:27:28 +02:00
Maciej Suminski
1073a524b9
Refactored code responsible for high contrast mode. Now it allows to have more than one layer on the top.
...
Selecting layer using the dropdown list on the toolbar influences the layer displayed in high contrast mode.
2013-07-16 09:26:29 +02:00
Maciej Suminski
6dd9cb6fb8
1 pixel wide lines using OpenGL shaders.
2013-07-16 08:49:12 +02:00
Maciej Suminski
6789755b06
Stroked lines in Cairo GAL are always drawn at least 1 pixel wide.
2013-07-16 08:48:21 +02:00
Maciej Suminski
79a4f42ef9
Fixed multiline vertical strings drawing bug.
2013-07-09 10:00:23 +02:00
Dick Hollenbeck
8fdf3799a2
dialog information hiding, initial Fit()
2013-07-09 00:48:26 -05:00
Dick Hollenbeck
4b095ab61f
comment improvements
2013-07-09 00:22:08 -05:00
Dick Hollenbeck
757d617ef3
wxStandardPaths().GetExecutablePath(); is not wx 2.9.5 compatible, formatting improvements
2013-07-09 00:20:07 -05:00
Maciej Suminski
ea436444f2
wxWidgets 2.8 compatibility fix.
...
Scripting engine build fix.
2013-07-08 17:14:16 +02:00
Maciej Suminski
7d9d2e508d
Remove updating of non-cached layers.
2013-07-08 15:24:44 +02:00
Maciej Suminski
5bd8e7d4e8
Upstream merge.
2013-07-08 15:05:12 +02:00
Maciej Suminski
85131e359e
Added 'required layers' option for drawn items.
2013-07-08 09:28:58 +02:00
Maciej Sumiński
f067dc8b32
Added possibility to change zoom using toolbar in GAL.
2013-07-07 19:30:44 +02:00
Maciej Sumiński
f885296fb2
Removed KICAD_GAL CMake option.
2013-07-07 02:30:28 +02:00
Maciej Suminski
145ea35ac3
Fixed segmentation fault when there was no board loaded.
2013-07-05 15:48:45 +02:00
Maciej Suminski
1399ed198c
Removed most of deprecated OpenGL calls. Items used to be drawn in immediate mode now are drawn using vertex arrays.
2013-07-05 14:01:33 +02:00
Maciej Suminski
c2fb99ce49
Removed pointers where they were not necessary.
2013-07-05 09:31:04 +02:00
Maciej Suminski
53542a9d37
Added implementation of level of details per layer and item type pairs basis (items on every layer have a possibility to define the minimum VIEW scale to be shown).
2013-07-04 18:45:00 +02:00
Maciej Suminski
e77690c268
Added the 'cached' parameter for VIEW_LAYER. The parameter decides if items drawn on the layer should be cached or drawn in immediate mode.
...
Removed m_useGroups from VIEW, as now groups are enabled per layer.
2013-07-04 17:02:20 +02:00
Maciej Suminski
d8e45ef866
Fixed drawing circles and semicircles using display lists.
2013-07-04 16:27:27 +02:00
Maciej Suminski
b79c17b43c
Reduced frame limit.
2013-07-04 14:21:40 +02:00
Maciej Suminski
be415dab1d
Moved STROKE_FONT from PAINTER to GAL.
2013-07-04 11:37:43 +02:00
Maciej Suminski
d0278dad15
Shaders can handle integer parameters (uniforms).
2013-07-03 13:08:43 +02:00
Maciej Suminski
fc7b9029c9
Fixed stroked semicircles Z coordinate in shaderless OpenGL backend.
2013-07-02 18:11:57 +02:00
Maciej Suminski
2061947138
Fixed stroke semicircles drawing using shaderless OpenGL backend.
2013-07-02 09:27:12 +02:00
Dick Hollenbeck
04c24cb686
dsnlexer.cpp's isNumber() was recently stupid-ized, un-stupid-ize it.
2013-07-01 09:37:03 -05:00
Maciej Suminski
f38935459b
Headers are regenerated only if shaders' source code was modified.
2013-07-01 15:47:44 +02:00
Maciej Suminski
a6ce907a4f
Faster polylines drawing using OpenGL backend.
...
Fixed drawing of lines' caps.
2013-07-01 15:23:43 +02:00
unknown
f1dbfffd82
Removed different styles of line caps and line joins, leaving only round caps & joins.
...
Fixed drawing stroked semicircles using OpenGL backend.
2013-07-01 14:39:27 +02:00
Maciej Suminski
a46d344db2
Mirrored text display bugfix.
2013-07-01 14:06:38 +02:00
Maciej Suminski
5476a03799
Changed std::map to boost::unordered_map for storing memory chunks and groups information.
2013-07-01 13:20:48 +02:00
Dick Hollenbeck
d4569d66ac
DSNLEXER::NextTok() organizes the specctraMode code better, into one if block mostly.
...
This keeps it out of the KiCad mode path, making that leaner and less confusing about
what is supported in KiCad mode. Within KiCad mode, treat quoted vs. non-quoted tokens
as the two general categories, with non-quoted having sub-categories. Eliminate
an unimplemented, unused function declaration in DSNLEXER.
Improve the output formatting of THROW_PARSE_ERROR().
2013-07-01 01:47:36 -05:00
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