|
KiCad PCB EDA Suite
|
#include <sch_draw_panel.h>
Public Types | |
| enum | GAL_TYPE { GAL_TYPE_UNKNOWN = -1 , GAL_TYPE_NONE = 0 , GAL_TYPE_OPENGL , GAL_TYPE_CAIRO , GAL_TYPE_LAST } |
Public Member Functions | |
| SCH_DRAW_PANEL (wxWindow *aParentWindow, wxWindowID aWindowId, const wxPoint &aPosition, const wxSize &aSize, KIGFX::GAL_DISPLAY_OPTIONS &aOptions, GAL_TYPE aGalType=GAL_TYPE_OPENGL) | |
| ~SCH_DRAW_PANEL () | |
| void | DisplaySymbol (LIB_SYMBOL *aSymbol) |
| void | DisplaySheet (SCH_SCREEN *aScreen) |
| bool | SwitchBackend (GAL_TYPE aGalType) override |
| Switch method of rendering graphics. | |
| KIGFX::SCH_VIEW * | GetView () const override |
| Return a pointer to the KIGFX::VIEW instance used in the panel. | |
| void | SetFocus () override |
| bool | StatusPopupHasFocus () |
| void | SetStatusPopup (wxWindow *aPopup) |
| void | UpdateTouchpadGestureHandler () |
| Apply the current native touchpad gesture preference to the active backend window. | |
| GAL_TYPE | GetBackend () const |
| Return the type of backend currently used by GAL canvas. | |
| KIGFX::GAL * | GetGAL () const |
| Return a pointer to the GAL instance used in the panel. | |
| KIGFX::VIEW_CONTROLS * | GetViewControls () const |
| Return a pointer to the KIGFX::VIEW_CONTROLS instance used in the panel. | |
| bool | GetScreenshot (wxImage &aDstImage) |
| Capture the current canvas contents into aDstImage. | |
| virtual void | Refresh (bool aEraseBackground=true, const wxRect *aRect=nullptr) override |
| void | ForceRefresh () |
| Force a redraw. | |
| void | RequestRefresh () |
| Make sure a refresh gets done on the next idle event if it hasn't already. | |
| void | UpdateOverlayExclusions () |
| Tell the backend which areas of this panel are covered by an overlaid infobar. | |
| void | ResizeGal (bool aForce=false) |
| Resize the GAL to the current client size of this panel. | |
| void | SetEventDispatcher (TOOL_DISPATCHER *aEventDispatcher) |
| Set a dispatcher that processes events and forwards them to tools. | |
| void | StartDrawing () |
| Begin drawing if it was stopped previously. | |
| void | StopDrawing () |
| Prevent the GAL canvas from further drawing until it is recreated or StartDrawing() is called. | |
| virtual void | SetHighContrastLayer (int aLayer) |
| Take care of display settings for the given layer to be displayed in high contrast mode. | |
| virtual void | SetTopLayer (int aLayer) |
| Move the selected layer to the top, so it is displayed above all others. | |
| virtual void | GetMsgPanelInfo (EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) |
| EDA_DRAW_FRAME * | GetParentEDAFrame () const |
| Returns parent EDA_DRAW_FRAME, if available or NULL otherwise. | |
| bool | IsDialogPreview () const |
| void | SetStealsFocus (bool aStealsFocus) |
| Set whether focus is taken on certain events (mouseover, keys, etc). | |
| void | SetCurrentCursor (KICURSOR aCursor) |
| Set the current cursor shape for this panel. | |
| virtual BOX2I | GetDefaultViewBBox () const |
| Return the bounding box of the view that should be used if model is not valid. | |
| void | OnEvent (wxEvent &aEvent) |
| Used to forward events to the canvas from popups, etc. | |
| bool | DoRePaint (bool aAllowSkip=true) |
| Repaint the canvas, and fix scrollbar cursors. | |
| std::shared_ptr< KIGFX::VIEW_OVERLAY > | DebugOverlay () |
| Create an overlay for rendering debug graphics. | |
| void | ClearDebugOverlay () |
| Clear the contents of the debug overlay and removes it from the VIEW. | |
| virtual void | prepareGridSources () |
| Hook for subclasses to push per-frame grid sources onto the GAL. | |
Static Public Member Functions | |
| static GAL_TYPE | ResolveStoredCanvasType (int aStoredCanvasType) |
| Convert a stored canvas type setting into a backend that can actually be used. | |
| static KIGFX::VC_SETTINGS | GetVcSettings () |
| Gets a populated View Controls settings object dervived from our program settings. | |
Public Attributes | |
| bool | m_MouseCapturedLost |
| used on wxMSW: true after a wxEVT_MOUSE_CAPTURE_LOST was received false after the mouse is recaptured. | |
| std::unique_ptr< PROF_COUNTER > | m_PaintEventCounter |
Static Public Attributes | |
| static constexpr GAL_TYPE | GAL_FALLBACK = GAL_TYPE_CAIRO |
| static constexpr bool | GAL_FALLBACK_AVAILABLE = GAL_FALLBACK != GAL_TYPE_OPENGL |
Protected Member Functions | |
| virtual void | onPaint (wxPaintEvent &WXUNUSED(aEvent)) override |
| void | OnShow () override |
| Called when the window is shown for the first time. | |
| void | setDefaultLayerOrder () |
| Reassign layer order to the initial settings. | |
| void | setDefaultLayerDeps () |
| Set rendering targets & dependencies for layers. | |
| void | onSize (wxSizeEvent &aEvent) |
| void | onEnter (wxMouseEvent &aEvent) |
| void | onLostFocus (wxFocusEvent &aEvent) |
| void | onIdle (wxIdleEvent &aEvent) |
| void | onRefreshTimer (wxTimerEvent &aEvent) |
| void | onShowEvent (wxShowEvent &aEvent) |
| bool | recoverFromGalError (const std::exception &aErr) |
| bool | handleContextLoss () |
| Replace a GAL whose context was destroyed by a GPU reset. | |
| void | showMessageLater (const wxString &aTitle, const wxString &aDetail, bool aError) |
| Show a recovery message once the current event finishes. | |
Protected Attributes | |
| wxWindow * | m_parent |
| Pointer to the parent window. | |
| EDA_DRAW_FRAME * | m_edaFrame |
| Parent EDA_DRAW_FRAME (if available) | |
| std::chrono::steady_clock::time_point | m_lastRepaintStart |
| Timestamp of the last repaint start. | |
| std::chrono::steady_clock::time_point | m_lastRepaintEnd |
| Timestamp of the last repaint end. | |
| wxTimer | m_refreshTimer |
| Timer to prevent too-frequent refreshing. | |
| std::mutex | m_refreshMutex |
| Blocks multiple calls to the draw. | |
| bool | m_drawing |
| True if GAL is currently redrawing the view. | |
| bool | m_drawingEnabled |
| Flag that determines if VIEW may use GAL for redrawing the screen. | |
| bool | m_needIdleRefresh |
| True when canvas needs to be refreshed from idle handler. | |
| VECTOR2D | m_lastCursorPosition |
| Last cursor position sent to GAL for drawing. | |
| KIGFX::GAL * | m_gal |
| Interface for drawing objects on a 2D-surface. | |
| KIGFX::VIEW * | m_view |
| Stores view settings (scale, center, etc.) and items to be drawn. | |
| std::unique_ptr< KIGFX::PAINTER > | m_painter |
| Contains information about how to draw items using GAL. | |
| KIGFX::WX_VIEW_CONTROLS * | m_viewControls |
| Control for VIEW (moving, zooming, etc.) | |
| GAL_TYPE | m_backend |
| Currently used GAL. | |
| KIGFX::GAL_DISPLAY_OPTIONS & | m_options |
| TOOL_DISPATCHER * | m_eventDispatcher |
| Processes and forwards events to tools. | |
| bool | m_lostFocus |
| Flag to indicate that focus should be regained on the next mouse event. | |
| bool | m_glRecoveryAttempted |
| Set after an OpenGL recovery attempt to prevent infinite retry loops. | |
| int | m_contextBindFailures |
| Consecutive frames dropped because the GL context could not be made current. | |
| bool | m_rebuiltAfterReset |
| The GAL was rebuilt after a GPU reset and has not completed a frame yet. | |
| bool | m_pendingResize |
| Set when a size change could not be applied because the GL context was unavailable. | |
| bool | m_stealsFocus |
| Flag to indicate whether the panel should take focus at certain times (when moused over, and on various mouse/key events) | |
| wxWindow * | m_statusPopup |
| std::shared_ptr< KIGFX::VIEW_OVERLAY > | m_debugOverlay |
| Optional overlay for drawing transient debug objects. | |
| std::unique_ptr< KIPLATFORM::UI::TOUCHPAD_GESTURE_HANDLER > | m_touchpadGestureHandler |
Definition at line 31 of file sch_draw_panel.h.
|
inherited |
| Enumerator | |
|---|---|
| GAL_TYPE_UNKNOWN | not specified: a GAL engine must be set by the client |
| GAL_TYPE_NONE | GAL not used (the legacy wxDC engine is used) |
| GAL_TYPE_OPENGL | OpenGL implementation. |
| GAL_TYPE_CAIRO | Cairo implementation. |
| GAL_TYPE_LAST | Sentinel, do not use as a parameter. |
Definition at line 69 of file class_draw_panel_gal.h.
| SCH_DRAW_PANEL::SCH_DRAW_PANEL | ( | wxWindow * | aParentWindow, |
| wxWindowID | aWindowId, | ||
| const wxPoint & | aPosition, | ||
| const wxSize & | aSize, | ||
| KIGFX::GAL_DISPLAY_OPTIONS & | aOptions, | ||
| GAL_TYPE | aGalType = GAL_TYPE_OPENGL ) |
Definition at line 50 of file sch_draw_panel.cpp.
References DEFAULT_THEME, EDA_DRAW_PANEL_GAL::EDA_DRAW_PANEL_GAL(), GetColorSettings(), EDA_DRAW_PANEL_GAL::GetParentEDAFrame(), GetView(), EDA_DRAW_PANEL_GAL::m_gal, EDA_DRAW_PANEL_GAL::m_painter, EDA_DRAW_PANEL_GAL::m_view, EDA_DRAW_PANEL_GAL::m_viewControls, SCH_WORLD_UNIT(), setDefaultLayerDeps(), setDefaultLayerOrder(), EDA_DRAW_PANEL_GAL::SetFocus(), EDA_DRAW_PANEL_GAL::StartDrawing(), KIGFX::VIEW::UpdateAllLayersOrder(), ZOOM_MAX_LIMIT_EESCHEMA, and ZOOM_MIN_LIMIT_EESCHEMA.
| SCH_DRAW_PANEL::~SCH_DRAW_PANEL | ( | ) |
Definition at line 98 of file sch_draw_panel.cpp.
|
inherited |
Clear the contents of the debug overlay and removes it from the VIEW.
Definition at line 1069 of file draw_panel_gal.cpp.
References m_debugOverlay, and m_view.
|
inherited |
Create an overlay for rendering debug graphics.
Definition at line 1057 of file draw_panel_gal.cpp.
References m_debugOverlay, and m_view.
| void SCH_DRAW_PANEL::DisplaySheet | ( | SCH_SCREEN * | aScreen | ) |
Definition at line 109 of file sch_draw_panel.cpp.
References KIGFX::SCH_VIEW::Cleanup(), KIGFX::VIEW::Clear(), KIGFX::SCH_VIEW::DisplaySheet(), and GetView().
Referenced by SCH_EDIT_FRAME::HardRedraw(), SCH_EDIT_FRAME::OpenProjectFiles(), SCH_EDIT_FRAME::SetCurrentSheet(), and SCH_EDIT_FRAME::SetScreen().
| void SCH_DRAW_PANEL::DisplaySymbol | ( | LIB_SYMBOL * | aSymbol | ) |
Definition at line 103 of file sch_draw_panel.cpp.
References KIGFX::SCH_VIEW::DisplaySymbol(), and GetView().
Referenced by SYMBOL_EDIT_FRAME::activateSymbolTab(), SYMBOL_EDIT_FRAME::RebuildView(), and SYMBOL_EDIT_FRAME::SetCurSymbol().
|
inherited |
Repaint the canvas, and fix scrollbar cursors.
Usually called by a OnPaint event.
Because it does not use a wxPaintDC, it can be called outside a wxPaintEvent.
Definition at line 351 of file draw_panel_gal.cpp.
References _, GAL_TYPE_OPENGL, KIGFX::RENDER_SETTINGS::GetBackgroundColor(), KIGFX::VIEW::GetCenter(), KIGFX::RENDER_SETTINGS::GetCursorColor(), KIGFX::RENDER_SETTINGS::GetGridColor(), GetParentEDAFrame(), EDA_DRAW_FRAME::GetScreen(), GetView(), handleContextLoss(), IsDialogPreview(), KIGFX::GAL_DRAWING_CONTEXT::IsDrawing(), m_backend, m_contextBindFailures, m_drawing, m_drawingEnabled, m_gal, m_glRecoveryAttempted, m_lastCursorPosition, m_lastRepaintEnd, m_lastRepaintStart, m_painter, m_pendingResize, m_rebuiltAfterReset, m_refreshMutex, BASE_SCREEN::m_ScrollCenter, m_view, m_viewControls, MAX_CONTEXT_BIND_RETRIES, Pgm(), prepareGridSources(), recoverFromGalError(), RequestRefresh(), ResizeGal(), showMessageLater(), PROF_TIMER::Start(), PROF_TIMER::Stop(), StopDrawing(), KIGFX::TARGET_NONCACHED, KIGFX::TARGET_OVERLAY, PROF_TIMER::to_string(), traceDrawPanel, and traceGalProfile.
Referenced by ForceRefresh(), GetScreenshot(), onPaint(), and Refresh().
|
inherited |
Force a redraw.
Definition at line 696 of file draw_panel_gal.cpp.
References DoRePaint(), m_drawingEnabled, m_gal, m_refreshTimer, onIdle(), and onPaint().
Referenced by BOARD_EDITOR_CONTROL::AssignNetclass(), FOOTPRINT_EDIT_FRAME::CommonSettingsChanged(), FOOTPRINT_VIEWER_FRAME::CommonSettingsChanged(), GERBVIEW_FRAME::CommonSettingsChanged(), PCB_EDIT_FRAME::CommonSettingsChanged(), PL_EDITOR_FRAME::CommonSettingsChanged(), SCH_EDIT_FRAME::CommonSettingsChanged(), SYMBOL_EDIT_FRAME::CommonSettingsChanged(), SYMBOL_VIEWER_FRAME::CommonSettingsChanged(), FOOTPRINT_PREVIEW_PANEL::DisplayFootprint(), PAD_TOOL::ExitPadEditMode(), FOOTPRINT_EDIT_FRAME::HardRedraw(), SCH_BASE_FRAME::HardRedraw(), SCH_EDIT_FRAME::HardRedraw(), FOOTPRINT_EDIT_FRAME::installFootprintTabBoard(), POSITION_RELATIVE_TOOL::InteractiveOffset(), DIALOG_FP_EDIT_PAD_TABLE::OnAddRow(), PCB_EDIT_FRAME::OnCrossProbeFlashTimer(), SCH_EDIT_FRAME::OnCrossProbeFlashTimer(), DIALOG_FP_EDIT_PAD_TABLE::OnDeleteRow(), DIALOG_FP_EDIT_PAD_TABLE::OnImportButtonClick(), onRefreshTimer(), DIALOG_FP_EDIT_PAD_TABLE::OnSelectCell(), FOOTPRINT_PREVIEW_PANEL::RefreshAll(), FOOTPRINT_EDIT_FRAME::RefreshLibraryFootprintTab(), DIALOG_FP_EDIT_PAD_TABLE::RestoreOriginalPadState(), FOOTPRINT_EDITOR_CONTROL::Save(), FOOTPRINT_EDITOR_CONTROL::SaveAs(), COMMON_TOOLS::ToggleBoundingBoxes(), FOOTPRINT_EDIT_FRAME::updateInfoBar(), and SYMBOL_EDIT_FRAME::updateInfoBar().
|
inlineinherited |
Return the type of backend currently used by GAL canvas.
Definition at line 143 of file class_draw_panel_gal.h.
References m_backend.
Referenced by DIALOG_SYMBOL_REMAP::OnRemapSymbols(), EDA_DRAW_FRAME::resolveCanvasType(), EDA_DRAW_FRAME::SwitchCanvas(), GERBVIEW_FRAME::UpdateXORLayers(), GERBVIEW_FRAME::~GERBVIEW_FRAME(), PCB_BASE_FRAME::~PCB_BASE_FRAME(), PL_EDITOR_FRAME::~PL_EDITOR_FRAME(), and SCH_EDIT_FRAME::~SCH_EDIT_FRAME().
|
inlinevirtualinherited |
Return the bounding box of the view that should be used if model is not valid.
For example, the drawing sheet bounding box for an empty PCB
Reimplemented in GERBVIEW_DRAW_PANEL_GAL, and PCB_DRAW_PANEL_GAL.
Definition at line 276 of file class_draw_panel_gal.h.
Referenced by COMMON_TOOLS::doCenter(), and COMMON_TOOLS::ZoomFitBox().
|
inlineinherited |
Return a pointer to the GAL instance used in the panel.
Definition at line 150 of file class_draw_panel_gal.h.
References m_gal.
Referenced by FOOTPRINT_EDIT_FRAME::ActivateGalCanvas(), GERBVIEW_FRAME::ActivateGalCanvas(), SCH_BASE_FRAME::CommonSettingsChanged(), SYMBOL_VIEWER_FRAME::CommonSettingsChanged(), KICAD_DIFF::ConfigurePcbDiffCanvasContext(), KICAD_DIFF::ConfigureSchDiffCanvasContext(), KICAD_DIFF::ConfigureSymDiffCanvasContext(), GERBVIEW_FRAME::DisplayGridMsg(), GERBVIEW_DRAW_PANEL_GAL::GERBVIEW_DRAW_PANEL_GAL(), EDA_DRAW_FRAME::GetNearestGridPosition(), EDA_DRAW_FRAME::GetNearestHalfGridPosition(), FOOTPRINT_PREVIEW_PANEL::New(), DIALOG_FP_EDIT_PAD_TABLE::OnAddRow(), EDA_DRAW_FRAME::OnUpdateSelectZoom(), PL_DRAW_PANEL_GAL::PL_DRAW_PANEL_GAL(), PCB_BASE_EDIT_FRAME::SetBoard(), GERBVIEW_FRAME::SetGridColor(), PCB_EDIT_FRAME::SetGridColor(), EDA_DRAW_FRAME::SetGridVisibility(), FP_TREE_SYNCHRONIZING_ADAPTER::ShowPreview(), GERBVIEW_DRAW_PANEL_GAL::SwitchBackend(), PL_DRAW_PANEL_GAL::SwitchBackend(), FOOTPRINT_EDIT_FRAME::SwitchCanvas(), and SYMBOL_EDIT_FRAME::SwitchCanvas().
|
inlinevirtualinherited |
Reimplemented in GERBVIEW_DRAW_PANEL_GAL, PCB_DRAW_PANEL_GAL, and PL_DRAW_PANEL_GAL.
Definition at line 240 of file class_draw_panel_gal.h.
|
inlineinherited |
Returns parent EDA_DRAW_FRAME, if available or NULL otherwise.
Definition at line 248 of file class_draw_panel_gal.h.
References m_edaFrame.
Referenced by DoRePaint(), GERBVIEW_DRAW_PANEL_GAL::GERBVIEW_DRAW_PANEL_GAL(), PCB_DRAW_PANEL_GAL::GetMsgPanelInfo(), GERBVIEW_DRAW_PANEL_GAL::OnShow(), PCB_DRAW_PANEL_GAL::OnShow(), SCH_DRAW_PANEL::OnShow(), PCB_DRAW_PANEL_GAL::PCB_DRAW_PANEL_GAL(), PCB_DRAW_PANEL_GAL::prepareGridSources(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), GERBVIEW_DRAW_PANEL_GAL::SwitchBackend(), and PCB_DRAW_PANEL_GAL::UpdateColors().
|
inherited |
Capture the current canvas contents into aDstImage.
Definition at line 719 of file draw_panel_gal.cpp.
References DoRePaint(), GAL_TYPE_OPENGL, GetScreenshot(), m_backend, and m_gal.
Referenced by GetScreenshot().
|
staticinherited |
Gets a populated View Controls settings object dervived from our program settings.
Definition at line 1079 of file draw_panel_gal.cpp.
References COMMON_SETTINGS::INPUT::auto_pan, COMMON_SETTINGS::INPUT::auto_pan_acceleration, COMMON_SETTINGS::INPUT::center_on_zoom, COMMON_SETTINGS::INPUT::drag_left, COMMON_SETTINGS::INPUT::drag_middle, COMMON_SETTINGS::INPUT::drag_right, COMMON_SETTINGS::INPUT::focus_follow_sch_pcb, PGM_BASE::GetCommonSettings(), COMMON_SETTINGS::INPUT::horizontal_pan, KIGFX::VC_SETTINGS::m_autoPanAcceleration, KIGFX::VC_SETTINGS::m_autoPanSettingEnabled, KIGFX::VC_SETTINGS::m_dragLeft, KIGFX::VC_SETTINGS::m_dragMiddle, KIGFX::VC_SETTINGS::m_dragRight, KIGFX::VC_SETTINGS::m_focusFollowSchPcb, KIGFX::VC_SETTINGS::m_horizontalPan, COMMON_SETTINGS::m_Input, KIGFX::VC_SETTINGS::m_motionPanModifier, KIGFX::VC_SETTINGS::m_scrollModifierPanH, KIGFX::VC_SETTINGS::m_scrollModifierPanV, KIGFX::VC_SETTINGS::m_scrollModifierZoom, KIGFX::VC_SETTINGS::m_scrollReversePanH, KIGFX::VC_SETTINGS::m_scrollReverseZoom, KIGFX::VC_SETTINGS::m_warpCursor, KIGFX::VC_SETTINGS::m_zoomAcceleration, KIGFX::VC_SETTINGS::m_zoomSpeed, KIGFX::VC_SETTINGS::m_zoomSpeedAuto, COMMON_SETTINGS::INPUT::motion_pan_modifier, Pgm(), COMMON_SETTINGS::INPUT::reverse_scroll_pan_h, COMMON_SETTINGS::INPUT::reverse_scroll_zoom, COMMON_SETTINGS::INPUT::scroll_modifier_pan_h, COMMON_SETTINGS::INPUT::scroll_modifier_pan_v, COMMON_SETTINGS::INPUT::scroll_modifier_zoom, COMMON_SETTINGS::INPUT::zoom_acceleration, COMMON_SETTINGS::INPUT::zoom_speed, and COMMON_SETTINGS::INPUT::zoom_speed_auto.
Referenced by EDA_3D_VIEWER_FRAME::applySettings(), EDA_3D_VIEWER_FRAME::configureCanvas(), and SwitchBackend().
|
overridevirtual |
Return a pointer to the KIGFX::VIEW instance used in the panel.
Reimplemented from EDA_DRAW_PANEL_GAL.
Definition at line 181 of file sch_draw_panel.cpp.
References EDA_DRAW_PANEL_GAL::m_view.
Referenced by SYMBOL_EDIT_FRAME::activateSymbolTab(), SCH_BASE_FRAME::AddToScreen(), SCH_BASE_FRAME::CommonSettingsChanged(), SCH_EDIT_FRAME::CommonSettingsChanged(), SYMBOL_EDIT_FRAME::CommonSettingsChanged(), SYMBOL_EDIT_FRAME::CreateNewSymbol(), API_HANDLER_SYMBOL::deleteItemsInternal(), SCH_EDIT_FRAME::DisplayCurrentSheet(), DisplaySheet(), DisplaySymbol(), SCH_EDIT_FRAME::GetDocumentExtents(), API_HANDLER_SYMBOL::handleCreateUpdateItemsInternal(), SCH_BASE_FRAME::HardRedraw(), SCH_EDIT_FRAME::IntersheetRefUpdate(), SCH_EDIT_FRAME::KiwayMailIn(), SYMBOL_VIEWER_FRAME::KiwayMailIn(), SYMBOL_EDIT_FRAME::LoadOneLibrarySymbol(), SYMBOL_EDIT_FRAME::LoadSymbolFromSchematic(), SCH_EDIT_FRAME::OnPageSettingsChange(), DIALOG_CHANGE_SYMBOLS::processSymbols(), SCH_EDIT_FRAME::PutDataInPreviousState(), SYMBOL_EDIT_FRAME::RebuildView(), SCH_EDIT_FRAME::RecalculateConnections(), SCH_BASE_FRAME::RedrawScreen(), SCH_EDIT_FRAME::RefreshConnectivity(), SCH_EDIT_FRAME::RefreshErcMarkers(), SCH_EDIT_FRAME::RefreshOperatingPointDisplay(), SCH_BASE_FRAME::RefreshZoomDependentItems(), SCH_BASE_FRAME::RemoveFromScreen(), SCH_EDIT_FRAME::SaveProject(), SCH_EDIT_FRAME::SaveSymbolToSchematic(), SCH_DRAW_PANEL(), SYMBOL_EDIT_FRAME::SetCurSymbol(), SCH_EDIT_FRAME::SetSchematic(), SCH_EDIT_FRAME::ShowAllIntersheetRefs(), SYMBOL_EDIT_FRAME::ShowChangedLanguage(), SCH_EDIT_FRAME::ShowSchematicSetupDialog(), SCH_BASE_FRAME::SyncView(), SCH_EDIT_FRAME::TestDanglingEnds(), SCH_EDIT_FRAME::UpdateHopOveredWires(), SCH_BASE_FRAME::UpdateItem(), SYMBOL_VIEWER_FRAME::updatePreviewSymbol(), SCH_EDIT_FRAME::~SCH_EDIT_FRAME(), and SYMBOL_VIEWER_FRAME::~SYMBOL_VIEWER_FRAME().
|
inlineinherited |
Return a pointer to the KIGFX::VIEW_CONTROLS instance used in the panel.
Definition at line 164 of file class_draw_panel_gal.h.
References m_viewControls.
Referenced by PCB_BASE_FRAME::ActivateGalCanvas(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), EDA_DRAW_FRAME::CommonSettingsChanged(), FOOTPRINT_EDITOR_CONTROL::CreateFootprintFromWizard(), DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME(), EDA_DRAW_FRAME::FocusOnLocation(), FOOTPRINT_WIZARD_FRAME::FOOTPRINT_WIZARD_FRAME(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), FOOTPRINT_EDIT_FRAME::OpenProjectFiles(), SCH_BASE_FRAME::RedrawScreen(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), GERBVIEW_FRAME::UpdateStatusBar(), PCB_BASE_FRAME::UpdateStatusBar(), PL_EDITOR_FRAME::UpdateStatusBar(), and SCH_BASE_FRAME::UpdateStatusBar().
|
protectedinherited |
Replace a GAL whose context was destroyed by a GPU reset.
Definition at line 273 of file draw_panel_gal.cpp.
References _, GAL_FALLBACK, GAL_FALLBACK_AVAILABLE, GAL_TYPE_NONE, m_backend, m_gal, m_rebuiltAfterReset, m_refreshTimer, KIGFX::NONE, KIGFX::RECOVERABLE, KIGFX::REPEATED, EDA_DRAW_FRAME::SetOpenGLFailureOccurred(), showMessageLater(), StartDrawing(), SwitchBackend(), and traceGalContext.
Referenced by DoRePaint(), and recoverFromGalError().
|
inlineinherited |
Definition at line 250 of file class_draw_panel_gal.h.
References m_edaFrame, and m_parent.
Referenced by DoRePaint(), PCB_DRAW_PANEL_GAL::OnShow(), and PCB_DRAW_PANEL_GAL::PCB_DRAW_PANEL_GAL().
|
protectedinherited |
Definition at line 979 of file draw_panel_gal.cpp.
References KIUI::IsInputControlFocused(), KIUI::IsModalDialogFocused(), KIPLATFORM::UI::IsWindowActive(), m_edaFrame, m_stealsFocus, and SetFocus().
Referenced by EDA_DRAW_PANEL_GAL().
|
inherited |
Used to forward events to the canvas from popups, etc.
Definition at line 960 of file draw_panel_gal.cpp.
References KIUI::IsInputControlFocused(), KIUI::IsModalDialogFocused(), KIPLATFORM::UI::IsWindowActive(), m_edaFrame, m_eventDispatcher, m_lostFocus, m_stealsFocus, Refresh(), and SetFocus().
Referenced by EDA_DRAW_PANEL_GAL(), and STATUS_POPUP::onCharHook().
|
protectedinherited |
Definition at line 1010 of file draw_panel_gal.cpp.
References m_needIdleRefresh, and Refresh().
Referenced by ForceRefresh(), and StopDrawing().
|
protectedinherited |
Definition at line 994 of file draw_panel_gal.cpp.
References m_eventDispatcher, m_lostFocus, and m_viewControls.
Referenced by EDA_DRAW_PANEL_GAL().
|
overrideprotectedvirtual |
Reimplemented from EDA_DRAW_PANEL_GAL.
Definition at line 212 of file sch_draw_panel.cpp.
References EDA_DRAW_PANEL_GAL::m_gal, and EDA_DRAW_PANEL_GAL::onPaint().
|
protectedinherited |
Definition at line 1022 of file draw_panel_gal.cpp.
References ForceRefresh().
Referenced by EDA_DRAW_PANEL_GAL().
|
overrideprotectedvirtual |
Called when the window is shown for the first time.
Reimplemented from EDA_DRAW_PANEL_GAL.
Definition at line 187 of file sch_draw_panel.cpp.
References SCH_BASE_FRAME::ActivateGalCanvas(), DisplayInfoMessage(), EDA_DRAW_PANEL_GAL::GAL_FALLBACK, EDA_DRAW_PANEL_GAL::GetParentEDAFrame(), EDA_DRAW_PANEL_GAL::m_backend, EDA_DRAW_PANEL_GAL::m_view, and SwitchBackend().
|
protectedinherited |
Definition at line 1028 of file draw_panel_gal.cpp.
References m_gal, and OnShow().
Referenced by EDA_DRAW_PANEL_GAL(), and ~EDA_DRAW_PANEL_GAL().
|
protectedinherited |
Definition at line 585 of file draw_panel_gal.cpp.
References ResizeGal().
Referenced by EDA_DRAW_PANEL_GAL().
|
inlinevirtualinherited |
Hook for subclasses to push per-frame grid sources onto the GAL.
Called from DoRePaint just before GAL::DrawGrid.
Reimplemented in PCB_DRAW_PANEL_GAL.
Definition at line 324 of file class_draw_panel_gal.h.
Referenced by DoRePaint().
|
protectedinherited |
Definition at line 203 of file draw_panel_gal.cpp.
References _, GAL_FALLBACK, GAL_FALLBACK_AVAILABLE, GAL_TYPE_NONE, handleContextLoss(), m_backend, m_gal, m_glRecoveryAttempted, m_rebuiltAfterReset, EDA_DRAW_FRAME::SetOpenGLFailureOccurred(), showMessageLater(), StartDrawing(), and SwitchBackend().
Referenced by DoRePaint().
|
overridevirtualinherited |
Reimplemented in SCH_PREVIEW_PANEL.
Definition at line 656 of file draw_panel_gal.cpp.
References delta, DoRePaint(), m_gal, m_lastRepaintStart, m_refreshTimer, and RequestRefresh().
Referenced by PCB_EDIT_FRAME::ActivateGalCanvas(), SYMBOL_EDIT_FRAME::activateSymbolTab(), SCH_EDIT_FRAME::AnnotateSymbols(), WIDGET_DIFF_CANVAS::CenterOnHighlight(), GERBVIEW_CONTROL::ClearAllLayers(), SYMBOL_EDIT_FRAME::CommonSettingsChanged(), PCB_BASE_EDIT_FRAME::configureToolbars(), FOOTPRINT_EDITOR_CONTROL::CreateFootprintFromWizard(), COMMON_TOOLS::doCenter(), SCH_EDIT_FRAME::EditVariantDescription(), GERBVIEW_FRAME::Erase_Current_DrawLayer(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), FOOTPRINT_PREVIEW_PANEL::fitToCurrentFootprint(), PCB_BASE_FRAME::FocusOnItems(), PL_EDITOR_FRAME::GetLayoutFromRedoList(), PL_EDITOR_FRAME::GetLayoutFromUndoList(), PCB_VIEWER_TOOLS::GraphicOutlines(), API_HANDLER_SCH::handleDeleteVariant(), PCB_EDIT_FRAME::HandleRemoteNetHighlight(), API_HANDLER_PCB::handleSetBoardEditorAppearanceSettings(), PL_EDITOR_FRAME::HardRedraw(), GERBVIEW_CONTROL::HighlightControl(), DISPLAY_FOOTPRINTS_FRAME::InitDisplay(), POSITION_RELATIVE_TOOL::InteractiveOffset(), SCH_EDIT_FRAME::KiwayMailIn(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), GERBVIEW_FRAME::LoadListOfGerberAndDrillFiles(), SYMBOL_EDIT_FRAME::LoadSymbolFromSchematic(), GERBVIEW_CONTROL::LoadZipfile(), PCB_VIEWER_TOOLS::MeasureTool(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), OnEvent(), PANEL_COMPONENT_CLASS_ASSIGNMENT::OnHighlightItemsClick(), onIdle(), SCH_EDIT_FRAME::OnModify(), PCB_EDIT_FRAME::OnNetlistChanged(), SCH_EDIT_FRAME::onNetNavigatorSelection(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), GERBVIEW_FRAME::OnSelectActiveDCode(), GERBVIEW_FRAME::OnSelectActiveLayer(), PL_EDITOR_FRAME::OnSelectCoordOriginCorner(), PL_EDITOR_FRAME::OnSelectPage(), PCB_EDIT_FRAME::onVariantSelected(), GERBVIEW_CONTROL::OpenJobFile(), FOOTPRINT_EDIT_FRAME::OpenProjectFiles(), GERBVIEW_CONTROL::OpenZipFile(), PCB_VIEWER_TOOLS::PadDisplayMode(), ROUTER_TOOL::performRouting(), ROUTER_TOOL::prepareInteractive(), PCB_CONTROL::RatsnestModeCycle(), WIDGET_DIFF_CANVAS::rebuildOverlay(), SYMBOL_EDIT_FRAME::RebuildView(), SYMBOL_VIEWER_FRAME::ReCreateLibList(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), FOOTPRINT_WIZARD_FRAME::ReCreateParameterList(), SCH_BASE_FRAME::RedrawScreen(), SCH_PREVIEW_PANEL::Refresh(), ZONE_FILLER_TOOL::refresh(), EDA_DRAW_FRAME::RefreshCanvas(), PCB_EDIT_FRAME::RefreshDrillSymbols(), SCH_EDIT_FRAME::RefreshErcMarkers(), FOOTPRINT_WIZARD_FRAME::RegenerateFootprint(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), GERBVIEW_CONTROL::ReloadAllLayers(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), GERBVIEW_FRAME::RemapLayers(), SCH_EDIT_FRAME::RemoveVariant(), SCH_EDITOR_CONTROL::ReplaceTerminalPin(), PCB_BASE_EDIT_FRAME::RestoreCopyFromRedoList(), PCB_BASE_EDIT_FRAME::RestoreCopyFromUndoList(), FOOTPRINT_EDIT_FRAME::RevertFootprint(), PCB_BASE_EDIT_FRAME::RollbackFromUndo(), PL_EDITOR_FRAME::RollbackFromUndo(), SCH_EDIT_FRAME::RollbackSchematicFromUndo(), SCH_EDIT_FRAME::SaveProject(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), FOOTPRINT_EDIT_FRAME::SetActiveLayer(), GERBVIEW_FRAME::SetActiveLayer(), PCB_EDIT_FRAME::SetActiveLayer(), WIDGET_DIFF_CANVAS::SetContextPainter(), SYMBOL_EDIT_FRAME::SetCurSymbol(), PCB_BASE_FRAME::SetDisplayOptions(), EDA_DRAW_FRAME::SetGridVisibility(), GERBVIEW_FRAME::SetLayerDrawPrms(), PCB_BASE_FRAME::SetPlotSettings(), SYMBOL_VIEWER_FRAME::SetSelectedLibrary(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), SYMBOL_EDIT_FRAME::ShowChangedLanguage(), PCB_EDIT_FRAME::ShowFootprintPropertiesDialog(), PCB_VIEWER_TOOLS::ShowPadNumbers(), SCH_EDIT_FRAME::ShowSchematicSetupDialog(), SCH_EDIT_FRAME::subscribeConnectivity(), SCH_DRAW_PANEL::SwitchBackend(), PCB_BASE_FRAME::SwitchLayer(), PCB_EDIT_FRAME::SwitchLayer(), PCB_VIEWER_TOOLS::TextOutlines(), PCB_CONTROL::ToggleRatsnest(), PCB_CONTROL::TrackDisplayMode(), SYMBOL_VIEWER_FRAME::updatePreviewSymbol(), PANEL_ASSIGN_COMPONENT_CLASSES::Validate(), PCB_CONTROL::ViaDisplayMode(), PCB_CONTROL::ZoneDisplayMode(), GLOBAL_EDIT_TOOL::ZonesManager(), COMMON_TOOLS::ZoomFitBox(), ZONE_PREVIEW_CANVAS::ZoomFitScreen(), and WIDGET_DIFF_CANVAS::ZoomToBBox().
|
inherited |
Make sure a refresh gets done on the next idle event if it hasn't already.
Definition at line 650 of file draw_panel_gal.cpp.
References m_needIdleRefresh.
Referenced by DoRePaint(), ZONE_PREVIEW_CANVAS::LockZoom(), Refresh(), ResizeGal(), PCB_EDIT_FRAME::SetActiveLayer(), ZONE_PREVIEW_CANVAS::ZONE_PREVIEW_CANVAS(), and ZONE_PREVIEW_CANVAS::ZoomFitScreen().
|
inherited |
Resize the GAL to the current client size of this panel.
This must be used in preference to calling GAL::ResizeScreen() directly: it holds the GL context lock while the compositor buffers are reallocated, clamps degenerate sizes and invalidates the view.
| aForce | reallocates even when the client size is unchanged, which is required after a display scale factor change because the buffers are sized in native pixels rather than client units. |
Definition at line 591 of file draw_panel_gal.cpp.
References m_gal, m_pendingResize, m_view, RequestRefresh(), and ToVECTOR2I().
Referenced by DoRePaint(), EDA_DRAW_FRAME::OnMove(), and onSize().
|
staticinherited |
Convert a stored canvas type setting into a backend that can actually be used.
A settings file may have been written by hand or by another version of KiCad, so a value outside the supported range is bad data rather than a programming error. It resolves to the accelerated canvas, as does the retired wxDC canvas (GAL_TYPE_NONE).
| aStoredCanvasType | is the raw COMMON_SETTINGS graphics.canvas_type value. |
Definition at line 779 of file draw_panel_gal.cpp.
References GAL_TYPE_CAIRO, and GAL_TYPE_OPENGL.
Referenced by PANEL_COMMON_SETTINGS::applySettingsToPanel(), PANEL_SYMBOL_CHOOSER::constructRightPanel(), EDA_DRAW_FRAME::loadCanvasTypeSetting(), FOOTPRINT_PREVIEW_PANEL::New(), and PANEL_EESCHEMA_COLOR_SETTINGS::PANEL_EESCHEMA_COLOR_SETTINGS().
|
inherited |
Set the current cursor shape for this panel.
Definition at line 1037 of file draw_panel_gal.cpp.
References DPI_SCALING_COMMON::GetContentScaleFactor(), m_gal, and m_parent.
Referenced by EDIT_TOOL::doMoveSelection(), PAD_TOOL::EnumeratePads(), PCB_VIEWER_TOOLS::MeasureTool(), and SwitchBackend().
|
protected |
Set rendering targets & dependencies for layers.
Definition at line 144 of file sch_draw_panel.cpp.
References EDA_DRAW_PANEL_GAL::GAL_TYPE_OPENGL, LAYER_DANGLING, LAYER_DRAW_BITMAPS, LAYER_DRAWINGSHEET, LAYER_GP_OVERLAY, LAYER_NET_COLOR_HIGHLIGHT, LAYER_OP_CURRENTS, LAYER_OP_VOLTAGES, LAYER_SCHEMATIC_ANCHOR, LAYER_SELECT_OVERLAY, LAYER_SELECTION_SHADOWS, EDA_DRAW_PANEL_GAL::m_backend, EDA_DRAW_PANEL_GAL::m_view, KIGFX::TARGET_CACHED, KIGFX::TARGET_NONCACHED, KIGFX::TARGET_OVERLAY, and KIGFX::VIEW::VIEW_MAX_LAYERS.
Referenced by SCH_DRAW_PANEL(), and SwitchBackend().
|
protected |
Reassign layer order to the initial settings.
Definition at line 120 of file sch_draw_panel.cpp.
References EDA_DRAW_PANEL_GAL::m_view, SCH_LAYER_ORDER, and KIGFX::VIEW::VIEW_MAX_LAYERS.
Referenced by SCH_DRAW_PANEL().
|
inherited |
Set a dispatcher that processes events and forwards them to tools.
EDA_DRAW_PANEL_GAL does not take over the ownership. Passing NULL disconnects all event handlers from the EDA_DRAW_PANEL_GAL and parent frame.
| aEventDispatcher | is the object that will be used for dispatching events. |
Definition at line 734 of file draw_panel_gal.cpp.
References m_eventDispatcher.
Referenced by GERBVIEW_FRAME::ActivateGalCanvas(), PCB_BASE_FRAME::ActivateGalCanvas(), DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME(), FOOTPRINT_EDIT_FRAME::doCloseWindow(), FOOTPRINT_CHOOSER_FRAME::FOOTPRINT_CHOOSER_FRAME(), FOOTPRINT_WIZARD_FRAME::FOOTPRINT_WIZARD_FRAME(), FOOTPRINT_EDIT_FRAME::setupTools(), PL_EDITOR_FRAME::setupTools(), SCH_EDIT_FRAME::setupTools(), SYMBOL_EDIT_FRAME::setupTools(), and SYMBOL_VIEWER_FRAME::setupTools().
|
overrideinherited |
Definition at line 189 of file draw_panel_gal.cpp.
References KIPLATFORM::UI::ImeNotifyCancelComposition(), and m_lostFocus.
Referenced by ZONE_CREATE_HELPER::createNewZone(), onEnter(), OnEvent(), WIDGET_DIFF_CANVAS::onLeftDown(), PCB_EDIT_FRAME::OpenProjectFiles(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), PCB_EDIT_FRAME::SelectViaStack_Event(), FOOTPRINT_EDIT_FRAME::SetActiveLayer(), GERBVIEW_FRAME::SetActiveLayer(), PCB_EDIT_FRAME::SetActiveLayer(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), ZONE_FILLER_TOOL::singleShotRefocus(), PCB_EDIT_FRAME::ToggleSearch(), and PCB_EDIT_FRAME::Tracks_and_Vias_Size_Event().
|
virtualinherited |
Take care of display settings for the given layer to be displayed in high contrast mode.
Reimplemented in GERBVIEW_DRAW_PANEL_GAL, and PCB_DRAW_PANEL_GAL.
Definition at line 757 of file draw_panel_gal.cpp.
References KIGFX::RENDER_SETTINGS::ClearHighContrastLayers(), m_view, KIGFX::RENDER_SETTINGS::SetLayerIsHighContrast(), and SetTopLayer().
Referenced by GERBVIEW_FRAME::SetActiveLayer(), and PCB_BASE_FRAME::SetDisplayOptions().
|
inlineinherited |
Definition at line 111 of file class_draw_panel_gal.h.
References m_statusPopup.
Referenced by PAD_TOOL::EnumeratePads(), POSITION_RELATIVE_TOOL::InteractiveOffset(), MATCH_PROPERTIES_TOOL::runInteractive(), PCB_PICKER_TOOL::SelectItemInteractively(), and PCB_PICKER_TOOL::SelectPointInteractively().
|
inlineinherited |
Set whether focus is taken on certain events (mouseover, keys, etc).
This should be true (and is by default) for any primary canvas, but can be false to make well behaved preview panes and the like.
Definition at line 263 of file class_draw_panel_gal.h.
References m_stealsFocus.
Referenced by SYMBOL_VIEWER_FRAME::ClickOnSymbolList(), FOOTPRINT_PREVIEW_PANEL::FOOTPRINT_PREVIEW_PANEL(), and SYMBOL_VIEWER_FRAME::SetSelectedLibrary().
|
virtualinherited |
Move the selected layer to the top, so it is displayed above all others.
Reimplemented in GERBVIEW_DRAW_PANEL_GAL, PCB_DRAW_PANEL_GAL, and PL_DRAW_PANEL_GAL.
Definition at line 771 of file draw_panel_gal.cpp.
References m_view.
Referenced by SetHighContrastLayer().
|
protectedinherited |
Show a recovery message once the current event finishes.
Recovery runs inside a repaint, where a modal dialog would stop every canvas from painting until it was closed.
Definition at line 332 of file draw_panel_gal.cpp.
References DisplayErrorMessage(), DisplayInfoMessage(), and m_parent.
Referenced by DoRePaint(), handleContextLoss(), recoverFromGalError(), and SwitchBackend().
|
inherited |
Begin drawing if it was stopped previously.
Definition at line 740 of file draw_panel_gal.cpp.
References m_refreshTimer.
Referenced by EDA_DRAW_FRAME::ActivateGalCanvas(), GERBVIEW_FRAME::ActivateGalCanvas(), PCB_BASE_FRAME::ActivateGalCanvas(), FOOTPRINT_PREVIEW_PANEL::FOOTPRINT_PREVIEW_PANEL(), handleContextLoss(), recoverFromGalError(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), WIDGET_DIFF_CANVAS::WIDGET_DIFF_CANVAS(), and ZONE_PREVIEW_CANVAS::ZONE_PREVIEW_CANVAS().
|
inlineinherited |
Definition at line 106 of file class_draw_panel_gal.h.
References m_statusPopup.
|
inherited |
Prevent the GAL canvas from further drawing until it is recreated or StartDrawing() is called.
Definition at line 747 of file draw_panel_gal.cpp.
References m_drawingEnabled, m_refreshTimer, onIdle(), and onPaint().
Referenced by FOOTPRINT_EDIT_FRAME::doCloseWindow(), FOOTPRINT_VIEWER_FRAME::doCloseWindow(), GERBVIEW_FRAME::doCloseWindow(), PCB_EDIT_FRAME::doCloseWindow(), SCH_BASE_FRAME::doCloseWindow(), DoRePaint(), SwitchBackend(), DISPLAY_FOOTPRINTS_FRAME::~DISPLAY_FOOTPRINTS_FRAME(), ~EDA_DRAW_PANEL_GAL(), FOOTPRINT_VIEWER_FRAME::~FOOTPRINT_VIEWER_FRAME(), FOOTPRINT_WIZARD_FRAME::~FOOTPRINT_WIZARD_FRAME(), SCH_EDIT_FRAME::~SCH_EDIT_FRAME(), and WIDGET_DIFF_CANVAS::~WIDGET_DIFF_CANVAS().
|
overridevirtual |
Switch method of rendering graphics.
| aGalType | is a type of rendering engine that you want to use. |
Reimplemented from EDA_DRAW_PANEL_GAL.
Definition at line 132 of file sch_draw_panel.cpp.
References EDA_DRAW_PANEL_GAL::m_gal, EDA_DRAW_PANEL_GAL::Refresh(), SCH_WORLD_UNIT(), setDefaultLayerDeps(), and EDA_DRAW_PANEL_GAL::SwitchBackend().
Referenced by OnShow().
|
inherited |
Tell the backend which areas of this panel are covered by an overlaid infobar.
Must be called whenever an infobar is shown, hidden or moved.
Definition at line 630 of file draw_panel_gal.cpp.
References m_gal, and KIGFX::CAIRO_GAL::SetOverlayExclusions().
Referenced by SwitchBackend().
|
inherited |
Apply the current native touchpad gesture preference to the active backend window.
Definition at line 936 of file draw_panel_gal.cpp.
References KIPLATFORM::UI::CreateTouchpadGestureHandler(), m_gal, m_touchpadGestureHandler, m_viewControls, NATIVE_GESTURES, KIPLATFORM::UI::TOUCHPAD_GESTURE::panX, KIPLATFORM::UI::TOUCHPAD_GESTURE::panY, Pgm(), KIPLATFORM::UI::TOUCHPAD_GESTURE::zoomAnchor, and KIPLATFORM::UI::TOUCHPAD_GESTURE::zoomFactor.
Referenced by EDA_DRAW_FRAME::CommonSettingsChanged(), and SwitchBackend().
|
staticconstexprinherited |
Definition at line 81 of file class_draw_panel_gal.h.
Referenced by DIALOG_BARCODE_PROPERTIES_BASE::DIALOG_BARCODE_PROPERTIES_BASE(), DIALOG_KICAD_DIFF::DIALOG_KICAD_DIFF(), EVT_UPDATE_UI_RANGE(), FOOTPRINT_WIZARD_FRAME::FOOTPRINT_WIZARD_FRAME(), handleContextLoss(), PCB_DRAW_PANEL_GAL::OnShow(), SCH_DRAW_PANEL::OnShow(), recoverFromGalError(), EDA_DRAW_FRAME::resolveCanvasType(), FOOTPRINT_EDIT_FRAME::resolveCanvasType(), SCH_DESIGN_BLOCK_PREVIEW_WIDGET::SCH_DESIGN_BLOCK_PREVIEW_WIDGET(), SwitchBackend(), and SYMBOL_PREVIEW_WIDGET::SYMBOL_PREVIEW_WIDGET().
|
staticconstexprinherited |
Definition at line 83 of file class_draw_panel_gal.h.
Referenced by handleContextLoss(), recoverFromGalError(), and SwitchBackend().
|
protectedinherited |
Currently used GAL.
Definition at line 386 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), GetBackend(), GetScreenshot(), handleContextLoss(), PCB_DRAW_PANEL_GAL::OnShow(), SCH_DRAW_PANEL::OnShow(), recoverFromGalError(), GERBVIEW_DRAW_PANEL_GAL::setDefaultLayerDeps(), PCB_DRAW_PANEL_GAL::setDefaultLayerDeps(), SCH_DRAW_PANEL::setDefaultLayerDeps(), SwitchBackend(), and WIDGET_DIFF_CANVAS::WIDGET_DIFF_CANVAS().
|
protectedinherited |
Consecutive frames dropped because the GL context could not be made current.
Definition at line 400 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), and SwitchBackend().
|
protectedinherited |
Optional overlay for drawing transient debug objects.
Definition at line 415 of file class_draw_panel_gal.h.
Referenced by ClearDebugOverlay(), and DebugOverlay().
|
protectedinherited |
True if GAL is currently redrawing the view.
Definition at line 362 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), and ~EDA_DRAW_PANEL_GAL().
|
protectedinherited |
Flag that determines if VIEW may use GAL for redrawing the screen.
Definition at line 365 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), ForceRefresh(), and StopDrawing().
|
protectedinherited |
Parent EDA_DRAW_FRAME (if available)
Definition at line 353 of file class_draw_panel_gal.h.
Referenced by PL_DRAW_PANEL_GAL::DisplayDrawingSheet(), EDA_DRAW_PANEL_GAL(), GetParentEDAFrame(), IsDialogPreview(), onEnter(), and OnEvent().
|
protectedinherited |
Processes and forwards events to tools.
Definition at line 390 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), OnEvent(), onLostFocus(), and SetEventDispatcher().
|
protectedinherited |
Interface for drawing objects on a 2D-surface.
Definition at line 374 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), ForceRefresh(), GERBVIEW_DRAW_PANEL_GAL::GERBVIEW_DRAW_PANEL_GAL(), GetGAL(), GetScreenshot(), handleContextLoss(), SCH_DRAW_PANEL::onPaint(), onShowEvent(), PCB_DRAW_PANEL_GAL::PCB_DRAW_PANEL_GAL(), PL_DRAW_PANEL_GAL::PL_DRAW_PANEL_GAL(), PCB_DRAW_PANEL_GAL::prepareGridSources(), recoverFromGalError(), Refresh(), ResizeGal(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), SetCurrentCursor(), WIDGET_DIFF_CANVAS::SetWorldUnitLength(), SwitchBackend(), PCB_DRAW_PANEL_GAL::SwitchBackend(), SCH_DRAW_PANEL::SwitchBackend(), PCB_DRAW_PANEL_GAL::UpdateColors(), UpdateOverlayExclusions(), UpdateTouchpadGestureHandler(), WIDGET_DIFF_CANVAS::WIDGET_DIFF_CANVAS(), ZONE_PREVIEW_CANVAS::ZONE_PREVIEW_CANVAS(), and ~EDA_DRAW_PANEL_GAL().
|
protectedinherited |
Set after an OpenGL recovery attempt to prevent infinite retry loops.
Definition at line 397 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), and recoverFromGalError().
|
protectedinherited |
Last cursor position sent to GAL for drawing.
Definition at line 371 of file class_draw_panel_gal.h.
Referenced by DoRePaint().
|
protectedinherited |
Timestamp of the last repaint end.
Definition at line 356 of file class_draw_panel_gal.h.
Referenced by DoRePaint().
|
protectedinherited |
Timestamp of the last repaint start.
Definition at line 355 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), and Refresh().
|
protectedinherited |
Flag to indicate that focus should be regained on the next mouse event.
It is a workaround for cases when the panel loses keyboard focus, so it does not react to hotkeys anymore.
Definition at line 394 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), OnEvent(), onLostFocus(), and SetFocus().
|
inherited |
used on wxMSW: true after a wxEVT_MOUSE_CAPTURE_LOST was received false after the mouse is recaptured.
Used to avoid calling twice a CaptureMouse(), not accepted by wxMSW
Definition at line 316 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL().
|
protectedinherited |
True when canvas needs to be refreshed from idle handler.
Definition at line 368 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), onIdle(), and RequestRefresh().
|
protectedinherited |
Definition at line 387 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), and SwitchBackend().
|
protectedinherited |
Contains information about how to draw items using GAL.
Definition at line 380 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), GERBVIEW_DRAW_PANEL_GAL::GERBVIEW_DRAW_PANEL_GAL(), SCH_PREVIEW_PANEL::GetRenderSettings(), PCB_DRAW_PANEL_GAL::PCB_DRAW_PANEL_GAL(), PL_DRAW_PANEL_GAL::PL_DRAW_PANEL_GAL(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), WIDGET_DIFF_CANVAS::SetContextPainter(), SwitchBackend(), WIDGET_DIFF_CANVAS::WIDGET_DIFF_CANVAS(), and ZONE_PREVIEW_CANVAS::ZONE_PREVIEW_CANVAS().
|
inherited |
Definition at line 318 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL().
|
protectedinherited |
Pointer to the parent window.
Definition at line 352 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), IsDialogPreview(), SetCurrentCursor(), and showMessageLater().
|
protectedinherited |
Set when a size change could not be applied because the GL context was unavailable.
Definition at line 406 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), ResizeGal(), and SwitchBackend().
|
protectedinherited |
The GAL was rebuilt after a GPU reset and has not completed a frame yet.
Definition at line 403 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), handleContextLoss(), and recoverFromGalError().
|
protectedinherited |
Blocks multiple calls to the draw.
Definition at line 359 of file class_draw_panel_gal.h.
Referenced by DoRePaint().
|
protectedinherited |
Timer to prevent too-frequent refreshing.
Definition at line 357 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), ForceRefresh(), handleContextLoss(), Refresh(), StartDrawing(), and StopDrawing().
|
protectedinherited |
Definition at line 412 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), SetStatusPopup(), and StatusPopupHasFocus().
|
protectedinherited |
Flag to indicate whether the panel should take focus at certain times (when moused over, and on various mouse/key events)
Definition at line 410 of file class_draw_panel_gal.h.
Referenced by EDA_DRAW_PANEL_GAL(), onEnter(), OnEvent(), and SetStealsFocus().
|
protectedinherited |
Definition at line 417 of file class_draw_panel_gal.h.
Referenced by SwitchBackend(), UpdateTouchpadGestureHandler(), and ~EDA_DRAW_PANEL_GAL().
|
protectedinherited |
Stores view settings (scale, center, etc.) and items to be drawn.
Definition at line 377 of file class_draw_panel_gal.h.
Referenced by WIDGET_DIFF_CANVAS::CenterOnHighlight(), ClearDebugOverlay(), DebugOverlay(), PCB_DRAW_PANEL_GAL::DisplayBoard(), PL_DRAW_PANEL_GAL::DisplayDrawingSheet(), DoRePaint(), EDA_DRAW_PANEL_GAL(), GERBVIEW_DRAW_PANEL_GAL::GERBVIEW_DRAW_PANEL_GAL(), GERBVIEW_DRAW_PANEL_GAL::GetDefaultViewBBox(), PCB_DRAW_PANEL_GAL::GetDefaultViewBBox(), GetView(), PCB_DRAW_PANEL_GAL::GetView(), SCH_DRAW_PANEL::GetView(), ZONE_PREVIEW_CANVAS::LockZoom(), WIDGET_DIFF_CANVAS::onDoubleClick(), GERBVIEW_DRAW_PANEL_GAL::OnShow(), PCB_DRAW_PANEL_GAL::OnShow(), SCH_DRAW_PANEL::OnShow(), PCB_DRAW_PANEL_GAL::PCB_DRAW_PANEL_GAL(), PL_DRAW_PANEL_GAL::PL_DRAW_PANEL_GAL(), WIDGET_DIFF_CANVAS::rebuildOverlay(), PCB_DRAW_PANEL_GAL::RedrawRatsnest(), WIDGET_DIFF_CANVAS::refreshItemDimming(), ResizeGal(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), WIDGET_DIFF_CANVAS::SetCategoryVisible(), WIDGET_DIFF_CANVAS::SetContextItems(), WIDGET_DIFF_CANVAS::SetContextPainter(), GERBVIEW_DRAW_PANEL_GAL::setDefaultLayerDeps(), PCB_DRAW_PANEL_GAL::setDefaultLayerDeps(), PL_DRAW_PANEL_GAL::setDefaultLayerDeps(), SCH_DRAW_PANEL::setDefaultLayerDeps(), SCH_PREVIEW_PANEL::setDefaultLayerDeps(), PCB_DRAW_PANEL_GAL::setDefaultLayerOrder(), SCH_DRAW_PANEL::setDefaultLayerOrder(), SCH_PREVIEW_PANEL::setDefaultLayerOrder(), GERBVIEW_DRAW_PANEL_GAL::SetDrawingSheet(), PCB_DRAW_PANEL_GAL::SetDrawingSheet(), SetHighContrastLayer(), GERBVIEW_DRAW_PANEL_GAL::SetHighContrastLayer(), PCB_DRAW_PANEL_GAL::SetHighContrastLayer(), WIDGET_DIFF_CANVAS::SetItemCategories(), WIDGET_DIFF_CANVAS::SetLayerVisible(), SetTopLayer(), GERBVIEW_DRAW_PANEL_GAL::SetTopLayer(), PCB_DRAW_PANEL_GAL::SetTopLayer(), PL_DRAW_PANEL_GAL::SetTopLayer(), WIDGET_DIFF_CANVAS::shapeAt(), SwitchBackend(), GERBVIEW_DRAW_PANEL_GAL::SwitchBackend(), PCB_DRAW_PANEL_GAL::SyncLayersVisibility(), PCB_DRAW_PANEL_GAL::UpdateColors(), SCH_PREVIEW_PANEL::view(), WIDGET_DIFF_CANVAS::WIDGET_DIFF_CANVAS(), ZONE_PREVIEW_CANVAS::ZONE_PREVIEW_CANVAS(), ZONE_PREVIEW_CANVAS::ZoomFitScreen(), WIDGET_DIFF_CANVAS::ZoomToBBox(), ~EDA_DRAW_PANEL_GAL(), and WIDGET_DIFF_CANVAS::~WIDGET_DIFF_CANVAS().
|
protectedinherited |
Control for VIEW (moving, zooming, etc.)
Definition at line 383 of file class_draw_panel_gal.h.
Referenced by DoRePaint(), EDA_DRAW_PANEL_GAL(), GERBVIEW_DRAW_PANEL_GAL::GERBVIEW_DRAW_PANEL_GAL(), GetViewControls(), onLostFocus(), PCB_DRAW_PANEL_GAL::PCB_DRAW_PANEL_GAL(), PL_DRAW_PANEL_GAL::PL_DRAW_PANEL_GAL(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), UpdateTouchpadGestureHandler(), WIDGET_DIFF_CANVAS::WIDGET_DIFF_CANVAS(), and ~EDA_DRAW_PANEL_GAL().