Maciej Suminski
ad6571a508
GAL profiling: changed wxLogDebug() to wxLogTrace() for DRAW_PANEL_GAL
2018-02-26 17:22:47 +01:00
Maciej Suminski
d87a7ae58e
Fallback to Cairo when OpenGL is not supported
...
Fixes: lp:1741787
* https://bugs.launchpad.net/kicad/+bug/1741787
2018-01-18 10:17:06 +01:00
Tomasz Włostowski
8a09a1d329
refactoring: derive PCB-specific PCB_VIEW from VIEW with the intention of moving PCB_EDIT_FRAME entries used by the tools (e.g. GetActiveLayer) there
2017-11-03 20:02:06 +01:00
Jon Evans
0b9b8d3e93
Add support for reversed draw order and Cairo negative draw mode
2017-09-25 13:35:01 +02:00
jean-pierre charras
48393c605e
Try to fix special keys (ARROWS, PAGE UP/DOWN) issues both on Linux and Windows in GAL mode
...
Fixes: lp:1717270
https://bugs.launchpad.net/kicad/+bug/1717270
2017-09-18 16:04:31 +02:00
Jon Evans
93de82f0b2
Fix scrollbars in macOS GAL canvases
2017-09-15 11:29:49 +02:00
Jon Evans
b6298a0a41
Don't force grid color to LAYER_GRID in EDA_DRAW_PANEL_GAL
2017-09-12 12:49:17 +02:00
Tomasz Włostowski
32185ddcd3
Multiple improvements concerning colors, configuration handling and legacy features in pcbnew:
...
- support for background color setting
- removed several global config settings (such as g_Drc_On)
- wrapped most of global config settings in PCB_GENERAL_SETTINGS class
- reorganized PCB general options dialog to clearly mark which options concern only the legacy canvas
- new GAL feature for legacy users: double-click (or E) to change track width available as an option.
Fixes: lp:1530543
* https://bugs.launchpad.net/kicad/+bug/1530543
Fixes: lp:1707145
* https://bugs.launchpad.net/kicad/+bug/1707145
2017-08-04 16:06:57 +02:00
jean-pierre charras
6ed4f9b208
Make EDA_DRAW_FRAME::SetToolID and mouse cursor shape setting working in GAL canvases, and uses same mouse cursor shapes in legacy and gal canvases.
...
Starting fixing incorrect UI behavior of Zoom to selection in Pcbnew.
2017-06-12 15:16:09 +02:00
Jon Evans
3ec28e2acf
Refactor layer enumerations to all live in the same place
2017-03-30 16:01:48 -04:00
Chris Pavlina
1cee5780a5
Fix GAL focus bug
...
Caused by yours truly in 4618e6c7
2017-03-05 13:58:31 -05:00
Chris Pavlina
4618e6c7f8
Component chooser: event and focus cleanup
2017-03-04 11:14:04 -05:00
John Beard
7ad30b7167
Move Grid style to Graphics Options dialog
...
This puts the graphical/display options with the other similar options
in that dialog, rather than with the dimension options found in the Set
Grid dialog, which is in the Dimensions menu.
Also place the option itself in the GAL Display Options structure, so it
can be updated using the observer mechanism there.
The setter for the style in the GAL interface is removed, as the public
interface for setting this option is now to modify the
GAL_DISPLAY_OPTIONS structure and notify the GAL when done.
2017-02-20 10:52:34 +01:00
John Beard
ddded86a06
Give all GAL canvases access to a GAL_DISPLAY_OPTIONS structure instance
...
Also loads the gal options when loading a canvas, as the canvas
otherwise might not register the initial settings.
2017-02-20 10:52:34 +01:00
Jon Evans
9d68c970dc
Remove dependence on LAYER_ID from EDA_DRAW_PANEL_GAL
2017-02-20 09:15:55 +01:00
Jon Evans
7cd72d6ffb
Move layer colors from PCB_RENDER_SETTINGS to RENDER_SETTINGS
2017-02-16 17:30:31 +01:00
Jon Evans
7058e4eb21
Setup painter in PCB_DRAW_PANEL_GAL instead of EDA_DRAW_PANEL_GAL
2017-02-16 17:30:31 +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
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
77138e3702
Add UI control to set up gal opengl antialiasing and load/store the settings
2017-01-11 16:20:37 +01:00
jean-pierre charras
fff449ecf0
Performance counter rework: Add comments, fix coding style issues.
2016-12-31 13:00:24 +01:00
Simon Wells
a2116ae070
Removed wxPaintDC from EDA_DRAW_PANEL_GAL::onPaint()
2016-09-19 15:17:18 +02:00
Simon Richter
1b2fd6a382
Replace BOOST_FOREACH with C++11 range based for.
2016-06-29 16:07:55 -04:00
Maciej Suminski
01f32dd52c
GL_CONTEXT_MANAGER class to avoid unexpected GL context switches.
2016-06-03 15:46:12 +02:00
jean-pierre charras
3e2cae946c
Corrected wxDC objects used by EDA_DRAW_PANEL_GAL & OPENGL_GAL.
2016-06-03 15:46:11 +02:00
Maciej Suminski
3ca7026aa0
More robust checks for OpenGL canvas visibility.
2016-05-20 12:06:08 +02:00
Simon Wells
a9d08a620e
Hide OpenGL scrollbars on OS X to fix freeze
...
Fixes: https://bugs.launchpad.net/kicad/+bug/1553428
2016-05-21 19:38:47 -04:00
Maciej Suminski
d9f4877c94
Fixed a crash when starting pcbnew with OpenGL GAL.
2016-05-09 17:23:01 +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
702be4903f
Vertices are stored in GPU memory (OpenGL GAL).
2016-05-02 16:12:16 +02:00
Maciej Suminski
36dd6eb6b3
GAL profiling output is enabled with WXTRACE env variable.
2016-05-02 15:56:17 +02:00
Maciej Suminski
da312db7a4
Fixed a wxWidgets assertion. Newer wxWidgets (3.1) display a message saying that horizontal alignment flags are ignored with wxEXPAND.
2016-05-02 15:56:12 +02:00
Maciej Suminski
4262915b38
Code formatting.
2016-05-02 15:56:10 +02:00
Chris Pavlina
bb9f1b00cd
Fix graphics rendering on RTL systems (lp:1559545)
...
wx mirrors graphics by default on RTL systems; it is necessary to individually
set graphics canvases to LTR mode to avoid this.
2016-03-22 14:53:50 -04:00
Bernhard Stegmaier
5d25b4ef90
Disable FPS limiter for OSX (GAL).
2016-02-16 09:05:41 +01:00
Bernhard Stegmaier
3e2b4244f9
OSX: add support for wxMagnifyEvent on OSX builds using wxWidgets 3.1.0 or greater.
2016-01-24 19:18:29 -05:00
Tomasz Wlostowski
991b9d509a
GAL: apply grid offset when board is loaded and respect grid color setting. (fixes lp:1533168)
2016-01-13 13:37:52 -05:00
jean-pierre charras
ade51289a7
All: use solid lines instead of dashed lines to draw X and Y axis in legacy canvas (like in Gal canvas). The main reason: on OSX axis using dashed lines are very very slow to draw (looks like a wxWidget issue when the wxDC scale factor is very small)
2015-10-25 17:58:04 +01:00
Maciej Suminski
8fa28797f9
Fixed the problem of GAL frames excessively taking over focus in Windows.
2015-08-25 11:21:00 +02:00
Maciej Suminski
0386a4df94
Bulletproof canvas switching.
2015-08-21 10:33:36 +02:00
Maciej Suminski
6018bb6625
Pcbnew saves the type of used canvas.
2015-08-07 19:15:47 +02:00
Maciej Suminski
ddcdda1a59
GalType -> GAL_TYPE
2015-08-07 18:24:43 +02:00
Maciej Suminski
3cb095b7c2
GAL canvases update status bar, message panel & zoom widget.
2015-07-03 20:58:12 +02:00
Maciej Suminski
9d27caca75
More robust method of regaining keyboard focus (GAL).
2015-07-02 11:40:33 +02:00
Maciej Suminski
28a270a328
Refactored grid origin point drawing (GAL).
2015-06-18 17:51:53 +02:00
Maciej Suminski
d3b31316ba
Fixed module text visibility settings (GAL).
2015-06-16 17:03:36 +02:00
Garth Corral
6eaf029a0e
Pinch to zoom for OS X.
2015-05-21 22:54:29 +02:00
Maciej Suminski
2043d4696f
Scrollbars (GAL).
2015-05-18 13:48:10 +02:00
Maciej Suminski
50afd515c2
Minor code cleaning.
2015-04-30 10:46:03 +02:00
Maciej Suminski
b1ace1607b
Reworked GAL switching.
...
Now OpenGL can report its problems instead of shutting down the application.
2015-02-15 02:18:35 +01:00
Maciej Suminski
ad2df70953
Added EDA_DRAW_PANEL_GAL::ForceRefresh().
2014-10-13 15:22:45 +02:00
Maciej Suminski
91e9df59d4
Fixed layers order after changing the active layer.
2014-07-14 11:36:34 +02:00
Maciej Suminski
2f7706e8cd
Reduced number of switched events, allowing to use VIEW_CONTROLS, even if there is no extra event dispatcher.
2014-07-09 11:22:43 +02:00
Maciej Suminski
60b0a4e0be
Alternative approach to handling events and commands by TOOL_DISPATCHER.
...
Event handlers are (dis)connected depending on the active view.
TOOL_DISPATCHER inherits from wxEvtHandler, so now it receives events directly instead of being fed by external handlers.
2014-07-09 11:22:42 +02:00
Maciej Suminski
a68165d2a0
Minor changes (removed an unnecessary event handler and two function calls that had no real influence).
2014-07-09 10:57:32 +02:00
Maciej Suminski
9a47f4c645
Created a specialization of EDA_DRAW_PANEL_GAL: PCB_DRAW_PANEL_GAL.
...
Moved View related routines & fields from PCB_{BASE,EDIT}_FRAME & BOARD to PCB_DRAW_PANEL_GAL.
2014-07-09 10:57:32 +02:00
Maciej Suminski
2f6c5f3156
Removed EDA_DRAW_FRAME::SetGalCanvasActive() [it may be misleading], added EDA_DRAW_PANEL_GAL::GetBackend().
2014-07-09 10:34:00 +02:00
Maciej Suminski
d27ea7895d
Moved background color settings from GAL to RENDER_SETTINGS. Added RENDER_SETTINGS::TranslateColor() to convert between EDA_COLOR_T and COLOR4D.
2014-05-14 10:35:12 +02:00
Maciej Suminski
761375ddef
More compatibility fixes.
2014-05-13 11:22:51 +02:00
Maciej Suminski
3f8d9da31f
Key events are handled by wxEVT_CHAR instead of wxEVT_KEY_[UP|DOWN]. Fixed issue of chars that require modifiers (e.g. ? is Shift+/ on US keyboard layout).
2014-04-09 17:33:22 +02:00
Maciej Suminski
024bf9dd84
Fixed GAL canvas freeze when ordered twice to change to the same GAL canvas (e.g. double F11).
2014-04-04 12:01:30 +02:00
Maciej Suminski
ba275918e3
Renamed [class_]drawpanel_gal.[cpp|h] to [class_]draw_panel_gal.[cpp|h] to follow current naming scheme.
2014-04-04 11:56:04 +02:00