Commit Graph

1416 Commits

Author SHA1 Message Date
Maciej Suminski 2f0ae47c8e Code refactoring. 2013-07-30 18:29:54 +02:00
Maciej Suminski 11a2d81738 Made GAL backends settings more consistent. Fixed grid line width in the OpenGL backend. 2013-07-30 17:09:06 +02:00
Maciej Suminski bb4ea2db67 Merge removal of the shaderless OpenGL backend. 2013-07-30 14:05:32 +02:00
Maciej Sumiński 70a2321cc1 Fixed smudging in the Cairo backend. 2013-07-30 13:58:03 +02:00
Maciej Suminski 2331742384 Removed shaderless OpenGL backend. 2013-07-29 16:38:07 +02:00
Maciej Suminski 5a5616f258 Added initialization of variable, preventing unconditional jumps. Fixed typos in comments. 2013-07-29 14:12:27 +02:00
Maciej Suminski a4a2196cc2 Fixed profiling timers for compilation under Win32 (and hopefully Mac OS too). 2013-07-26 14:35:31 +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
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
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
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
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