OpenCPN Partial API docs
Loading...
Searching...
No Matches
ChartCanvas Class Reference

ChartCanvas - Main chart display and interaction component. More...

#include <chcanv.h>

Inheritance diagram for ChartCanvas:
AbstractChartCanvas

Public Member Functions

 ChartCanvas (wxFrame *frame, int canvasIndex, wxWindow *nmea_log)
 
virtual void ReloadVP (bool b_adjust=true) override
 
float GetVPScale () override
 Return ViewPort scale factor, in physical pixels per meter.
 
bool Show (bool show=true) override
 
double GetCanvasRangeMeters () override
 
int GetENCDisplayCategory () override
 
void SetCanvasRangeMeters (double range) override
 
wxBitmap * GetScratchBitmap () const override
 
void ResetGridFont () override
 
void ResetGlGridFont () override
 
void EnablePaint (bool b_enable) override
 
bool CanAccelerateGlPanning () override
 
void SetupGlCompression () override
 
void TriggerDeferredFocus () override
 
void Refresh (bool eraseBackground=true, const wxRect *rect=nullptr) override
 
wxWindow * GetWindow () override
 
double GetScaleValue () override
 
void SetupGlCanvas ()
 
void OnKeyDown (wxKeyEvent &event)
 
void OnKeyUp (wxKeyEvent &event)
 
void OnKeyChar (wxKeyEvent &event)
 
void OnPaint (wxPaintEvent &event)
 
void OnToolLeftClick (wxCommandEvent &event)
 
void PaintCleanup ()
 
void Scroll (int dx, int dy)
 
bool MouseEventOverlayWindows (wxMouseEvent &event)
 
bool MouseEventChartBar (wxMouseEvent &event)
 
bool MouseEventMUIBar (wxMouseEvent &event)
 
bool MouseEventToolbar (wxMouseEvent &event)
 
bool MouseEventIENCBar (wxMouseEvent &event)
 
bool MouseEventSetup (wxMouseEvent &event, bool b_handle_dclick=true)
 
bool MouseEventProcessObjects (wxMouseEvent &event)
 
bool MouseEventProcessCanvas (wxMouseEvent &event)
 Processes mouse events for core chart panning and zooming operations.
 
void SetCanvasCursor (wxMouseEvent &event)
 
void OnKillFocus (wxFocusEvent &WXUNUSED(event))
 
void OnSetFocus (wxFocusEvent &WXUNUSED(event))
 
void PopupMenuHandler (wxCommandEvent &event)
 
bool IsPrimaryCanvas ()
 
bool SetUserOwnship ()
 
bool SetCursor (const wxCursor &c) override
 
void Update () override
 
void LostMouseCapture (wxMouseCaptureLostEvent &event)
 
void CancelMouseRoute ()
 
void SetDisplaySizeMM (double size)
 Set the width of the screen in millimeters.
 
double GetDisplaySizeMM ()
 Get the width of the screen in millimeters.
 
bool SetVPScale (double sc, bool b_refresh=true)
 Sets the viewport scale while maintaining the center point.
 
bool SetVPProjection (int projection)
 
bool SetViewPoint (double lat, double lon)
 Centers the view on a specific lat/lon position.
 
bool SetViewPointByCorners (double latSW, double lonSW, double latNE, double lonNE)
 
bool SetViewPoint (double lat, double lon, double scale_ppm, double skew, double rotation, int projection=0, bool b_adjust=true, bool b_refresh=true)
 Set the viewport center point, scale, skew, rotation and projection.
 
void LoadVP (ViewPort &vp, bool b_adjust=true)
 
ChartStackGetpCurrentStack ()
 
void SetGroupIndex (int index, bool autoswitch=false)
 
bool CheckGroup (int igroup)
 
void canvasRefreshGroupIndex (void)
 
void canvasChartsRefresh (int dbi_hint)
 
void CheckGroupValid (bool showMessage=true, bool switchGroup0=true)
 
void UpdateCanvasS52PLIBConfig ()
 
void OnDeferredFocusTimerEvent (wxTimerEvent &event)
 
void OnRouteFinishTimerEvent (wxTimerEvent &event)
 
void ClearS52PLIBStateHash ()
 
void SetupCanvasQuiltMode (void)
 
void ApplyCanvasConfig (canvasConfig *pcc)
 
bool SetVPRotation (double angle)
 
double GetVPRotation (void)
 
double GetVPSkew (void)
 
double GetVPTilt (void)
 
void ClearbFollow (void)
 
void SetbFollow (void)
 
void TogglebFollow (void)
 
bool GetbFollow ()
 
void JumpToPosition (double lat, double lon, double scale)
 
void SetFirstAuto (bool b_auto)
 
void SetAbsoluteMinScale (double min_scale)
 
std::shared_ptr< HostApi121::PiPointContextGetCanvasContextAtPoint (int x, int y)
 
void GetDoubleCanvasPointPix (double rlat, double rlon, wxPoint2DDouble *r)
 Convert latitude/longitude to canvas pixel coordinates (physical pixels) with double precision.
 
void GetDoubleCanvasPointPixVP (ViewPort &vp, double rlat, double rlon, wxPoint2DDouble *r)
 Convert latitude/longitude to canvas pixel coordinates (physical pixels) with double precision, using specified viewport.
 
bool GetCanvasPointPix (double rlat, double rlon, wxPoint *r)
 Convert latitude/longitude to canvas pixel coordinates (physical pixels) rounded to nearest integer.
 
bool GetCanvasPointPixVP (ViewPort &vp, double rlat, double rlon, wxPoint *r)
 Convert latitude/longitude to canvas pixel coordinates rounded to nearest integer using specified viewport.
 
void GetCanvasPixPoint (double x, double y, double &lat, double &lon)
 Convert canvas pixel coordinates (physical pixels) to latitude/longitude.
 
void WarpPointerDeferred (int x, int y)
 
void UpdateShips ()
 
void UpdateAIS ()
 
void UpdateAlerts ()
 
void ToggleCPAWarn ()
 
bool IsMeasureActive ()
 
wxBitmap & GetTideBitmap ()
 
int GetUpMode ()
 
bool GetLookahead ()
 
void UnlockQuilt ()
 
void SetQuiltMode (bool b_quilt)
 
bool GetQuiltMode (void)
 
std::vector< int > GetQuiltIndexArray (void)
 
bool IsQuiltDelta (void)
 
void SetQuiltChartHiLiteIndex (int dbIndex)
 
void SetQuiltChartHiLiteIndexArray (std::vector< int > hilite_array)
 
void ClearQuiltChartHiLiteIndexArray ()
 
int GetQuiltReferenceChartIndex (void)
 
double GetBestStartScale (int dbi_hint, const ViewPort &vp)
 
void ConfigureChartBar ()
 
int GetNextContextMenuId ()
 
TCWingetTCWin ()
 
bool StartTimedMovement (bool stoptimer=true)
 
void DoTimedMovement ()
 
void DoMovement (long dt)
 Performs a step of smooth movement animation on the chart canvas.
 
void StopMovement ()
 
void StartTimedMovementVP (double target_lat, double target_lon, int nstep)
 
void DoTimedMovementVP ()
 
void StopMovementVP ()
 
void StartTimedMovementTarget ()
 
void DoTimedMovementTarget ()
 
void StopMovementTarget ()
 
void SetColorScheme (ColorScheme cs)
 
ColorScheme GetColorScheme ()
 
void CanvasApplyLocale ()
 
void RebuildCursors ()
 
int GetCanvasWidth ()
 
int GetCanvasHeight ()
 
float GetVPChartScale ()
 Return the ViewPort chart scale denominator (e.g., 50000 for a 1:50000 scale).
 
double GetCanvasScaleFactor ()
 Return the number of logical pixels per meter for the screen.
 
double GetCanvasTrueScale ()
 
double GetAbsoluteMinScalePpm ()
 
ViewPortGetpVP ()
 
void SetVP (ViewPort &)
 
ChartBaseGetChartAtCursor ()
 
ChartBaseGetOverlayChartAtCursor ()
 
PianoGetPiano ()
 
int GetPianoHeight ()
 
bool isRouteEditing (void)
 
bool isMarkEditing (void)
 
GSHHSChartGetWorldBackgroundChart ()
 
void ResetWorldBackgroundChart ()
 
void SetbTCUpdate (bool f)
 
bool GetbTCUpdate ()
 
void SetbShowCurrent (bool f)
 
bool GetbShowCurrent ()
 
void SetbShowTide (bool f)
 
bool GetbShowTide ()
 
void SetShowVisibleSectors (bool val)
 
bool GetShowVisibleSectors ()
 
double GetPixPerMM ()
 Get the number of logical pixels per millimeter on the screen.
 
void SetOwnShipState (ownship_state_t state)
 
void SetCursorStatus (double cursor_lat, double cursor_lon)
 
void GetCursorLatLon (double *lat, double *lon)
 
bool PanCanvas (double dx, double dy)
 Pans (moves) the canvas by the specified physical pixels in x and y directions.
 
void StopAutoPan (void)
 
bool IsOwnshipOnScreen ()
 
void DisableQuiltAdjustOnZoom (bool disable)
 
void ZoomCanvas (double factor, bool can_zoom_to_cursor=true, bool stoptimer=true)
 Perform a smooth zoom operation on the chart canvas by the specified factor.
 
void ZoomCanvasSimple (double factor)
 Perform an immediate zoom operation without smooth transitions.
 
void RotateCanvas (double dir)
 
void DoRotateCanvas (double rotation)
 
void DoTiltCanvas (double tilt)
 
void ShowAISTargetList (void)
 
void ShowGoToPosition (void)
 
void HideGlobalToolbar ()
 
void ShowGlobalToolbar ()
 
bool GetShowDepthUnits ()
 
void SetShowDepthUnits (bool show)
 
bool GetShowGrid ()
 
void SetShowGrid (bool show)
 
bool GetShowOutlines ()
 
void SetShowOutlines (bool show)
 
bool GetShowChartbar ()
 
wxRect GetMUIBarRect ()
 
void SetMUIBarPosition ()
 
void DestroyMuiBar ()
 
void CreateMUIBar ()
 
void ToggleChartOutlines (void)
 
void ToggleCanvasQuiltMode (void)
 
wxString GetScaleText ()
 
bool GetShowAIS ()
 
void SetShowAIS (bool show)
 
bool GetAttenAIS ()
 
void SetAttenAIS (bool show)
 
void SetShowFocusBar (bool enable)
 
bool GetShowFocusBar ()
 
MUIBarGetMUIBar ()
 
void SetAlertString (wxString str)
 
wxString GetAlertString ()
 
bool GetShowENCText ()
 
void SetShowENCText (bool show)
 
bool GetShowENCDepth ()
 
void SetShowENCDepth (bool show)
 
bool GetShowENCLightDesc ()
 
void SetShowENCLightDesc (bool show)
 
bool GetShowENCBuoyLabels ()
 
void SetShowENCBuoyLabels (bool show)
 
bool GetShowENCLights ()
 
void SetShowENCLights (bool show)
 
void SetENCDisplayCategory (int category)
 
bool GetShowENCAnchor ()
 
void SetShowENCAnchor (bool show)
 
bool GetShowENCDataQual ()
 
void SetShowENCDataQual (bool show)
 
void JaggyCircle (ocpnDC &dc, wxPen pen, int x, int y, int radius)
 
void ShowTides (bool bShow)
 
void ShowCurrents (bool bShow)
 
void SetUpMode (int mode)
 
void ToggleLookahead ()
 
void SetShowGPS (bool show)
 
void UpdateFollowButtonState (void)
 
void InvalidateGL ()
 
bool IsTileOverlayIndexInYesShow (int index)
 
bool IsTileOverlayIndexInNoShow (int index)
 
void AddTileOverlayIndexToNoShow (int index)
 
ViewPortGetVP ()
 
wxString FindValidUploadPort ()
 
ChartBaseGetLargestScaleQuiltChart ()
 
ChartBaseGetFirstQuiltChart ()
 
ChartBaseGetNextQuiltChart ()
 
int GetQuiltChartCount ()
 
void InvalidateAllQuiltPatchs (void)
 
void SetQuiltRefChart (int dbIndex)
 
std::vector< int > GetQuiltCandidatedbIndexArray (bool flag1=true, bool flag2=true)
 
std::vector< int > & GetQuiltExtendedStackdbIndexArray ()
 
std::vector< int > & GetQuiltFullScreendbIndexArray ()
 
std::vector< int > GetQuiltEclipsedStackdbIndexArray ()
 
int GetQuiltRefChartdbIndex (void)
 
void InvalidateQuilt (void)
 
double GetQuiltMaxErrorFactor ()
 
bool IsChartQuiltableRef (int db_index)
 
bool IsChartLargeEnoughToRender (ChartBase *chart, ViewPort &vp)
 
int GetCanvasChartNativeScale ()
 
int FindClosestCanvasChartdbIndex (int scale)
 
void UpdateCanvasOnGroupChange (void)
 
void ShowObjectQueryWindow (int x, int y, float zlat, float zlon)
 
void ShowMarkPropertiesDialog (RoutePoint *markPoint)
 
void ShowRoutePropertiesDialog (wxString title, Route *selected)
 
void ShowTrackPropertiesDialog (Track *selected)
 
void DrawTCWindow (int x, int y, void *pIDX)
 Legacy tide dialog creation method.
 
void ShowSingleTideDialog (int x, int y, void *pvIDX)
 Display tide/current dialog with single-instance management.
 
bool IsTideDialogOpen () const
 
void CloseTideDialog ()
 Close any open tide dialog.
 
void UpdateGPSCompassStatusBox (bool b_force_new)
 
ocpnCompassGetCompass ()
 
wxColour GetFogColor ()
 
void ShowChartInfoWindow (int x, int dbIndex)
 
void HideChartInfoWindow (void)
 
void ShowCompositeInfoWindow (int x, int n_charts, int scale, const std::vector< int > &index_vector)
 
void StartMeasureRoute ()
 
void CancelMeasureRoute ()
 
bool DoCanvasUpdate (void)
 
void SelectQuiltRefdbChart (int db_index, bool b_autoscale=true)
 
void SelectQuiltRefChart (int selected_index)
 
double GetBestVPScale (ChartBase *pchart)
 
void selectCanvasChartDisplay (int type, int family)
 
void RemoveChartFromQuilt (int dbIndex)
 
void HandlePianoClick (int selected_index, const std::vector< int > &selected_dbIndex_array)
 
void HandlePianoRClick (int x, int y, int selected_index, const std::vector< int > &selected_dbIndex_array)
 
void HandlePianoRollover (int selected_index, const std::vector< int > &selected_dbIndex_array, int n_charts, int scale)
 
void ClearPianoRollover ()
 
void UpdateCanvasControlBar (void)
 
void FormatPianoKeys (void)
 
void PianoPopupMenu (int x, int y, int selected_index, const std::vector< int > &selected_dbIndex_array)
 
void OnPianoMenuDisableChart (wxCommandEvent &event)
 
void OnPianoMenuEnableChart (wxCommandEvent &event)
 
bool IsPianoContextMenuActive ()
 
bool DoCanvasCOGSet (void)
 
void ApplyGlobalSettings ()
 
void SetShowGPSCompassWindow (bool bshow)
 
bool GetShowGPSCompassWindow ()
 
void FreezePiano ()
 
void ThawPiano ()
 
void StartChartDragInertia ()
 
void SetupGridFont ()
 
void DrawBlinkObjects (void)
 
void StartRoute (void)
 
wxString FinishRoute (void)
 
bool CheckEdgePan (int x, int y, bool bdragging, int margin, int delta)
 
int GetMinAvailableGshhgQuality ()
 
int GetMaxAvailableGshhgQuality ()
 
RouteGetSelectedRoute () const
 
TrackGetSelectedTrack () const
 
RoutePointGetSelectedRoutePoint () const
 
void SetAISCanvasDisplayStyle (int StyleIndx)
 
void TouchAISToolActive (void)
 
void UpdateAISTBTool (void)
 
void SelectChartFromStack (int index, bool bDir=false, ChartTypeEnum New_Type=CHART_TYPE_DONTCARE, ChartFamilyEnum New_Family=CHART_FAMILY_DONTCARE)
 
void SelectdbChart (int dbindex)
 
void DoCanvasStackDelta (int direction)
 
void ProcessNewGUIScale ()
 
wxRect GetScaleBarRect ()
 
void RenderAlertMessage (wxDC &dc, const ViewPort &vp)
 
std::vector< int > GetQuiltNoshowIindexArray ()
 
double GetDisplayScale ()
 Get the ratio of physical to logical pixel for the display.
 
void ResetOwnshipOffset ()
 
NotificationsListGetNotificationsList ()
 
int PrepareContextSelections (double lat, double lon)
 
RoutePointGetFoundRoutepoint ()
 
- Public Member Functions inherited from AbstractChartCanvas
 AbstractChartCanvas (wxWindow *parent, wxPoint point, wxSize size, int flags)
 

Public Attributes

Undoundo
 
int m_canvasIndex
 
int m_groupIndex
 
Routem_pMouseRoute
 
bool m_bMeasure_Active
 
ChartBasem_singleChart
 
Quiltm_pQuilt
 
wxString m_active_upload_port
 
bool m_bFollow
 
wxCursor * pCursorPencil
 
wxCursor * pCursorArrow
 
wxCursor * pCursorCross
 
wxCursor * pPlugIn_Cursor
 
TCWinpCwin
 
bool m_brepaint_piano
 
double m_cursor_lon
 The longitude in degrees corresponding to the most recently processed cursor position.
 
double m_cursor_lat
 The latitude in degrees corresponding to the most recently processed cursor position.
 
wxPoint r_rband
 
double m_prev_rlat
 
double m_prev_rlon
 
RoutePointm_prev_pMousePoint
 
bool m_bShowNavobjects
 
int m_routeState
 
int m_upMode
 
bool m_bLookAhead
 
bool m_FinishRouteOnKillFocus
 
bool m_bMeasure_DistCircle
 
bool m_bAppendingRoute
 
int m_nMeasureState
 
Routem_pMeasureRoute
 
wxWindow * parent_frame
 
CanvasMenuHandlerm_canvasMenu
 
bool m_b_paint_enable
 
std::vector< int > m_tile_noshow_index_array
 
std::vector< int > m_tile_yesshow_index_array
 
std::vector< int > m_quilt_noshow_index_array
 
EventVar json_msg
 Notified with message targeting all plugins.
 
bool m_inPinch
 

Friends

class glChartCanvas
 

Detailed Description

ChartCanvas - Main chart display and interaction component.

Manages the visualization of nautical charts and all chart-related user interactions. This class integrates geographic data, user interface elements, and navigation tools into a comprehensive chart viewing experience. It handles everything from chart loading and rendering to user gestures, route planning, and navigation aids.

ChartCanvas uses ViewPort internally to handle the mathematical transformations between geographic and screen coordinates. While ViewPort focuses on the projection math, ChartCanvas manages the actual rendering, user interaction, and application logic.

As a wxWindow subclass, it responds to paint, mouse, keyboard, and other window events, translating them into appropriate chart operations like panning, zooming, and object manipulation.

Definition at line 173 of file chcanv.h.

Constructor & Destructor Documentation

◆ ChartCanvas()

ChartCanvas::ChartCanvas ( wxFrame *  frame,
int  canvasIndex,
wxWindow *  nmea_log 
)

Definition at line 250 of file chcanv.cpp.

◆ ~ChartCanvas()

ChartCanvas::~ChartCanvas ( )

Definition at line 686 of file chcanv.cpp.

Member Function Documentation

◆ AddTileOverlayIndexToNoShow()

void ChartCanvas::AddTileOverlayIndexToNoShow ( int  index)

Definition at line 14361 of file chcanv.cpp.

◆ ApplyCanvasConfig()

void ChartCanvas::ApplyCanvasConfig ( canvasConfig pcc)

Definition at line 1156 of file chcanv.cpp.

◆ ApplyGlobalSettings()

void ChartCanvas::ApplyGlobalSettings ( )

Definition at line 1206 of file chcanv.cpp.

◆ CanAccelerateGlPanning()

bool ChartCanvas::CanAccelerateGlPanning ( )
overridevirtual

Implements AbstractChartCanvas.

Definition at line 6180 of file chcanv.cpp.

◆ CancelMeasureRoute()

void ChartCanvas::CancelMeasureRoute ( )

Definition at line 2590 of file chcanv.cpp.

◆ CancelMouseRoute()

void ChartCanvas::CancelMouseRoute ( )

Definition at line 12612 of file chcanv.cpp.

◆ CanvasApplyLocale()

void ChartCanvas::CanvasApplyLocale ( )

Definition at line 849 of file chcanv.cpp.

◆ canvasChartsRefresh()

void ChartCanvas::canvasChartsRefresh ( int  dbi_hint)

Definition at line 1441 of file chcanv.cpp.

◆ canvasRefreshGroupIndex()

void ChartCanvas::canvasRefreshGroupIndex ( void  )

Definition at line 1317 of file chcanv.cpp.

◆ CheckEdgePan()

bool ChartCanvas::CheckEdgePan ( int  x,
int  y,
bool  bdragging,
int  margin,
int  delta 
)

Definition at line 7359 of file chcanv.cpp.

◆ CheckGroup()

bool ChartCanvas::CheckGroup ( int  igroup)

Definition at line 1407 of file chcanv.cpp.

◆ CheckGroupValid()

void ChartCanvas::CheckGroupValid ( bool  showMessage = true,
bool  switchGroup0 = true 
)

Definition at line 1215 of file chcanv.cpp.

◆ ClearbFollow()

void ChartCanvas::ClearbFollow ( void  )

Definition at line 4872 of file chcanv.cpp.

◆ ClearPianoRollover()

void ChartCanvas::ClearPianoRollover ( )

Definition at line 14582 of file chcanv.cpp.

◆ ClearQuiltChartHiLiteIndexArray()

void ChartCanvas::ClearQuiltChartHiLiteIndexArray ( )

Definition at line 2533 of file chcanv.cpp.

◆ ClearS52PLIBStateHash()

void ChartCanvas::ClearS52PLIBStateHash ( )
inline

Definition at line 332 of file chcanv.h.

◆ CloseTideDialog()

void ChartCanvas::CloseTideDialog ( )

Close any open tide dialog.

Definition at line 13791 of file chcanv.cpp.

◆ ConfigureChartBar()

void ChartCanvas::ConfigureChartBar ( )

Definition at line 1248 of file chcanv.cpp.

◆ CreateMUIBar()

void ChartCanvas::CreateMUIBar ( )

Definition at line 7139 of file chcanv.cpp.

◆ DestroyMuiBar()

void ChartCanvas::DestroyMuiBar ( )

Definition at line 7187 of file chcanv.cpp.

◆ DisableQuiltAdjustOnZoom()

void ChartCanvas::DisableQuiltAdjustOnZoom ( bool  disable)
inline

Definition at line 552 of file chcanv.h.

◆ DoCanvasCOGSet()

bool ChartCanvas::DoCanvasCOGSet ( void  )

Definition at line 3415 of file chcanv.cpp.

◆ DoCanvasStackDelta()

void ChartCanvas::DoCanvasStackDelta ( int  direction)

Definition at line 13945 of file chcanv.cpp.

◆ DoCanvasUpdate()

bool ChartCanvas::DoCanvasUpdate ( void  )

Definition at line 1511 of file chcanv.cpp.

◆ DoMovement()

void ChartCanvas::DoMovement ( long  dt)

Performs a step of smooth movement animation on the chart canvas.

This function is called to update the canvas position, scale, or rotation during animated panning, zooming, or rotating operations. The amount of movement performed is determined by the elapsed time parameter dt, and the operation continues as long as the internal movement timer is nonzero.

Parameters
dtElapsed time in milliseconds since the last movement step.
See also
StartTimedMovement(), StopMovement(), m_mustmove

Definition at line 3643 of file chcanv.cpp.

◆ DoRotateCanvas()

void ChartCanvas::DoRotateCanvas ( double  rotation)

Definition at line 4845 of file chcanv.cpp.

◆ DoTiltCanvas()

void ChartCanvas::DoTiltCanvas ( double  tilt)

Definition at line 4855 of file chcanv.cpp.

◆ DoTimedMovement()

void ChartCanvas::DoTimedMovement ( )

Definition at line 3625 of file chcanv.cpp.

◆ DoTimedMovementTarget()

void ChartCanvas::DoTimedMovementTarget ( )

Definition at line 3620 of file chcanv.cpp.

◆ DoTimedMovementVP()

void ChartCanvas::DoTimedMovementVP ( )

Definition at line 3581 of file chcanv.cpp.

◆ DrawBlinkObjects()

void ChartCanvas::DrawBlinkObjects ( void  )

Definition at line 13207 of file chcanv.cpp.

◆ DrawTCWindow()

void ChartCanvas::DrawTCWindow ( int  x,
int  y,
void *  pIDX 
)

Legacy tide dialog creation method.

Redirects to ShowSingleTideDialog for single-instance behavior.

Definition at line 13746 of file chcanv.cpp.

◆ EnablePaint()

void ChartCanvas::EnablePaint ( bool  b_enable)
overridevirtual

Implements AbstractChartCanvas.

Definition at line 2482 of file chcanv.cpp.

◆ FindClosestCanvasChartdbIndex()

int ChartCanvas::FindClosestCanvasChartdbIndex ( int  scale)

Definition at line 2448 of file chcanv.cpp.

◆ FindValidUploadPort()

wxString ChartCanvas::FindValidUploadPort ( )

Definition at line 13837 of file chcanv.cpp.

◆ FinishRoute()

wxString ChartCanvas::FinishRoute ( void  )

Definition at line 11188 of file chcanv.cpp.

◆ FormatPianoKeys()

void ChartCanvas::FormatPianoKeys ( void  )

Definition at line 14699 of file chcanv.cpp.

◆ FreezePiano()

void ChartCanvas::FreezePiano ( )
inline

Definition at line 761 of file chcanv.h.

◆ GetAbsoluteMinScalePpm()

double ChartCanvas::GetAbsoluteMinScalePpm ( )
inline

Definition at line 517 of file chcanv.h.

◆ GetAlertString()

wxString ChartCanvas::GetAlertString ( )
inline

Definition at line 625 of file chcanv.h.

◆ GetAttenAIS()

bool ChartCanvas::GetAttenAIS ( )
inline

Definition at line 619 of file chcanv.h.

◆ GetBestStartScale()

double ChartCanvas::GetBestStartScale ( int  dbi_hint,
const ViewPort vp 
)

Definition at line 5245 of file chcanv.cpp.

◆ GetBestVPScale()

double ChartCanvas::GetBestVPScale ( ChartBase pchart)

Definition at line 1994 of file chcanv.cpp.

◆ GetbFollow()

bool ChartCanvas::GetbFollow ( )
inline

Definition at line 344 of file chcanv.h.

◆ GetbShowCurrent()

bool ChartCanvas::GetbShowCurrent ( )
inline

Definition at line 536 of file chcanv.h.

◆ GetbShowTide()

bool ChartCanvas::GetbShowTide ( )
inline

Definition at line 538 of file chcanv.h.

◆ GetbTCUpdate()

bool ChartCanvas::GetbTCUpdate ( )
inline

Definition at line 534 of file chcanv.h.

◆ GetCanvasChartNativeScale()

int ChartCanvas::GetCanvasChartNativeScale ( )

Definition at line 2417 of file chcanv.cpp.

◆ GetCanvasContextAtPoint()

std::shared_ptr< HostApi121::PiPointContext > ChartCanvas::GetCanvasContextAtPoint ( int  x,
int  y 
)

Definition at line 7473 of file chcanv.cpp.

◆ GetCanvasHeight()

int ChartCanvas::GetCanvasHeight ( )
inline

Definition at line 499 of file chcanv.h.

◆ GetCanvasPixPoint()

void ChartCanvas::GetCanvasPixPoint ( double  x,
double  y,
double &  lat,
double &  lon 
)

Convert canvas pixel coordinates (physical pixels) to latitude/longitude.

Uses BSB chart geo-referencing for compatible raster charts when conditions permit, otherwise falls back to viewport projection estimation.

Parameters
xX-coordinate in physical pixels
yY-coordinate in physical pixels
lat[out] Reference to receive the resulting latitude at the given (x, y) coordinates.
lon[out] Reference to receive the resulting longitude at the given (x, y) coordinates.
See also
ViewPort::GetLLFromPix() for the underlying coordinate transformation.

Definition at line 4572 of file chcanv.cpp.

◆ GetCanvasPointPix()

bool ChartCanvas::GetCanvasPointPix ( double  rlat,
double  rlon,
wxPoint *  r 
)

Convert latitude/longitude to canvas pixel coordinates (physical pixels) rounded to nearest integer.

Uses GetDoubleCanvasPointPixVP internally and rounds results using wxRound (std::lround). This means 3.7 becomes 4, -3.7 becomes -4.

Parameters
rlatLatitude in degrees
rlonLongitude in degrees
r[out] Pointer to wxPoint to receive the canvas pixel coordinates in physical pixels, as rounded integer values.
Returns
true if conversion successful, false if coordinates are invalid or out of bounds.
See also
ViewPort::GetPixFromLL() for the underlying coordinate transformation.

Definition at line 4547 of file chcanv.cpp.

◆ GetCanvasPointPixVP()

bool ChartCanvas::GetCanvasPointPixVP ( ViewPort vp,
double  rlat,
double  rlon,
wxPoint *  r 
)

Convert latitude/longitude to canvas pixel coordinates rounded to nearest integer using specified viewport.

Uses GetDoubleCanvasPointPixVP internally and rounds results using wxRound (std::lround). This means 3.7 becomes 4, -3.7 becomes -4.

Parameters
vpViewPort containing projection parameters and canvas settings
rlatLatitude in degrees
rlonLongitude in degrees
r[out] Pointer to wxPoint to receive the canvas pixel coordinates in physical pixels, as rounded integer values.
Returns
true if conversion successful, false if:
  • Coordinates would be on other side of the world (resulting in NaN)
  • Resulting pixel values would be too large (>1e6) In these cases, r is set to INVALID_COORD
See also
ViewPort::GetPixFromLL() for the underlying coordinate transformation

Definition at line 4551 of file chcanv.cpp.

◆ GetCanvasRangeMeters()

double ChartCanvas::GetCanvasRangeMeters ( )
overridevirtual

Implements AbstractChartCanvas.

Definition at line 2208 of file chcanv.cpp.

◆ GetCanvasScaleFactor()

double ChartCanvas::GetCanvasScaleFactor ( )
inline

Return the number of logical pixels per meter for the screen.

Todo:
The name of this function is misleading. It should be renamed tgui/include/gui/quilt.ho GetCanvasLogicalPixelsPerMeter() or similar. It looks like some callers are expecting the physical pixels per meter, which is incorrect.

Definition at line 511 of file chcanv.h.

◆ GetCanvasTrueScale()

double ChartCanvas::GetCanvasTrueScale ( )
inline

Definition at line 516 of file chcanv.h.

◆ GetCanvasWidth()

int ChartCanvas::GetCanvasWidth ( )
inline

Definition at line 498 of file chcanv.h.

◆ GetChartAtCursor()

ChartBase * ChartCanvas::GetChartAtCursor ( )

Definition at line 2427 of file chcanv.cpp.

◆ GetColorScheme()

ColorScheme ChartCanvas::GetColorScheme ( )
inline

Definition at line 492 of file chcanv.h.

◆ GetCompass()

ocpnCompass * ChartCanvas::GetCompass ( )
inline

Definition at line 722 of file chcanv.h.

◆ GetCursorLatLon()

void ChartCanvas::GetCursorLatLon ( double *  lat,
double *  lon 
)

Definition at line 4485 of file chcanv.cpp.

◆ GetDisplayScale()

double ChartCanvas::GetDisplayScale ( )
inline

Get the ratio of physical to logical pixel for the display.

On standard displays, one logical pixel equals one physical pixel, so this value is 1.0. On high-DPI/Retina displays, one logical pixel may equal multiple physical pixels:

  • MacBook Pro Retina: 2.0 (2x2 physical pixels per logical pixel)
  • Other HiDPI displays: May be 1.5, 1.75, etc.

Definition at line 884 of file chcanv.h.

◆ GetDisplaySizeMM()

double ChartCanvas::GetDisplaySizeMM ( )
inline

Get the width of the screen in millimeters.

Definition at line 275 of file chcanv.h.

◆ GetDoubleCanvasPointPix()

void ChartCanvas::GetDoubleCanvasPointPix ( double  rlat,
double  rlon,
wxPoint2DDouble *  r 
)

Convert latitude/longitude to canvas pixel coordinates (physical pixels) with double precision.

Returns unrounded floating point pixel coordinates. When used with drawing functions that take integer coordinates, values will be truncated.

Parameters
rlatLatitude in degrees
rlonLongitude in degrees
r[out] Pointer to wxPoint2DDouble to receive the canvas pixel coordinates as unrounded floating point values

Definition at line 4492 of file chcanv.cpp.

◆ GetDoubleCanvasPointPixVP()

void ChartCanvas::GetDoubleCanvasPointPixVP ( ViewPort vp,
double  rlat,
double  rlon,
wxPoint2DDouble *  r 
)

Convert latitude/longitude to canvas pixel coordinates (physical pixels) with double precision, using specified viewport.

Returns unrounded floating point pixel coordinates. When used with drawing functions that take integer coordinates, values will be truncated.

Parameters
vpViewPort containing projection parameters and canvas settings
rlatLatitude in degrees
rlonLongitude in degrees
r[out] Pointer to wxPoint2DDouble to receive the canvas pixel coordinates as unrounded floating point values

Definition at line 4497 of file chcanv.cpp.

◆ GetENCDisplayCategory()

int ChartCanvas::GetENCDisplayCategory ( )
inlineoverridevirtual

Implements AbstractChartCanvas.

Definition at line 187 of file chcanv.h.

◆ GetFirstQuiltChart()

ChartBase * ChartCanvas::GetFirstQuiltChart ( )

Definition at line 2517 of file chcanv.cpp.

◆ GetFogColor()

wxColour ChartCanvas::GetFogColor ( )
inline

Definition at line 724 of file chcanv.h.

◆ GetFoundRoutepoint()

RoutePoint * ChartCanvas::GetFoundRoutepoint ( )
inline

Definition at line 890 of file chcanv.h.

◆ GetLargestScaleQuiltChart()

ChartBase * ChartCanvas::GetLargestScaleQuiltChart ( )

Definition at line 2513 of file chcanv.cpp.

◆ GetLookahead()

bool ChartCanvas::GetLookahead ( )
inline

Definition at line 448 of file chcanv.h.

◆ GetMaxAvailableGshhgQuality()

int ChartCanvas::GetMaxAvailableGshhgQuality ( )
inline

Definition at line 843 of file chcanv.h.

◆ GetMinAvailableGshhgQuality()

int ChartCanvas::GetMinAvailableGshhgQuality ( )
inline

Definition at line 840 of file chcanv.h.

◆ GetMUIBar()

MUIBar * ChartCanvas::GetMUIBar ( )
inline

Definition at line 623 of file chcanv.h.

◆ GetMUIBarRect()

wxRect ChartCanvas::GetMUIBarRect ( )

Definition at line 14915 of file chcanv.cpp.

◆ GetNextContextMenuId()

int ChartCanvas::GetNextContextMenuId ( )

Definition at line 12618 of file chcanv.cpp.

◆ GetNextQuiltChart()

ChartBase * ChartCanvas::GetNextQuiltChart ( )

Definition at line 2521 of file chcanv.cpp.

◆ GetNotificationsList()

NotificationsList * ChartCanvas::GetNotificationsList ( )
inline

Definition at line 886 of file chcanv.h.

◆ GetOverlayChartAtCursor()

ChartBase * ChartCanvas::GetOverlayChartAtCursor ( )

Definition at line 2438 of file chcanv.cpp.

◆ GetpCurrentStack()

ChartStack * ChartCanvas::GetpCurrentStack ( )
inline

Definition at line 319 of file chcanv.h.

◆ GetPiano()

Piano * ChartCanvas::GetPiano ( )
inline

Definition at line 522 of file chcanv.h.

◆ GetPianoHeight()

int ChartCanvas::GetPianoHeight ( )

Definition at line 1241 of file chcanv.cpp.

◆ GetPixPerMM()

double ChartCanvas::GetPixPerMM ( )
inline

Get the number of logical pixels per millimeter on the screen.

Definition at line 542 of file chcanv.h.

◆ GetpVP()

ViewPort * ChartCanvas::GetpVP ( )
inline

Definition at line 518 of file chcanv.h.

◆ GetQuiltCandidatedbIndexArray()

std::vector< int > ChartCanvas::GetQuiltCandidatedbIndexArray ( bool  flag1 = true,
bool  flag2 = true 
)

Definition at line 2537 of file chcanv.cpp.

◆ GetQuiltChartCount()

int ChartCanvas::GetQuiltChartCount ( )

Definition at line 2523 of file chcanv.cpp.

◆ GetQuiltEclipsedStackdbIndexArray()

std::vector< int > ChartCanvas::GetQuiltEclipsedStackdbIndexArray ( )

Definition at line 2554 of file chcanv.cpp.

◆ GetQuiltExtendedStackdbIndexArray()

std::vector< int > & ChartCanvas::GetQuiltExtendedStackdbIndexArray ( )

Definition at line 2546 of file chcanv.cpp.

◆ GetQuiltFullScreendbIndexArray()

std::vector< int > & ChartCanvas::GetQuiltFullScreendbIndexArray ( )

Definition at line 2550 of file chcanv.cpp.

◆ GetQuiltIndexArray()

std::vector< int > ChartCanvas::GetQuiltIndexArray ( void  )

Definition at line 2493 of file chcanv.cpp.

◆ GetQuiltMaxErrorFactor()

double ChartCanvas::GetQuiltMaxErrorFactor ( )

Definition at line 2560 of file chcanv.cpp.

◆ GetQuiltMode()

bool ChartCanvas::GetQuiltMode ( void  )

Definition at line 2503 of file chcanv.cpp.

◆ GetQuiltNoshowIindexArray()

std::vector< int > ChartCanvas::GetQuiltNoshowIindexArray ( )
inline

Definition at line 872 of file chcanv.h.

◆ GetQuiltRefChartdbIndex()

int ChartCanvas::GetQuiltRefChartdbIndex ( void  )

Definition at line 2542 of file chcanv.cpp.

◆ GetQuiltReferenceChartIndex()

int ChartCanvas::GetQuiltReferenceChartIndex ( void  )

Definition at line 2505 of file chcanv.cpp.

◆ GetScaleBarRect()

wxRect ChartCanvas::GetScaleBarRect ( )
inline

Definition at line 865 of file chcanv.h.

◆ GetScaleText()

wxString ChartCanvas::GetScaleText ( )
inline

Definition at line 616 of file chcanv.h.

◆ GetScaleValue()

double ChartCanvas::GetScaleValue ( )
inlineoverridevirtual

Implements AbstractChartCanvas.

Definition at line 200 of file chcanv.h.

◆ GetScratchBitmap()

wxBitmap * ChartCanvas::GetScratchBitmap ( ) const
inlineoverridevirtual

Implements AbstractChartCanvas.

Definition at line 189 of file chcanv.h.

◆ GetSelectedRoute()

Route * ChartCanvas::GetSelectedRoute ( ) const
inline

Definition at line 846 of file chcanv.h.

◆ GetSelectedRoutePoint()

RoutePoint * ChartCanvas::GetSelectedRoutePoint ( ) const
inline

Definition at line 848 of file chcanv.h.

◆ GetSelectedTrack()

Track * ChartCanvas::GetSelectedTrack ( ) const
inline

Definition at line 847 of file chcanv.h.

◆ GetShowAIS()

bool ChartCanvas::GetShowAIS ( )
inline

Definition at line 617 of file chcanv.h.

◆ GetShowChartbar()

bool ChartCanvas::GetShowChartbar ( )
inline

Definition at line 607 of file chcanv.h.

◆ GetShowDepthUnits()

bool ChartCanvas::GetShowDepthUnits ( )
inline

Definition at line 601 of file chcanv.h.

◆ GetShowENCAnchor()

bool ChartCanvas::GetShowENCAnchor ( )
inline

Definition at line 643 of file chcanv.h.

◆ GetShowENCBuoyLabels()

bool ChartCanvas::GetShowENCBuoyLabels ( )
inline

Definition at line 635 of file chcanv.h.

◆ GetShowENCDataQual()

bool ChartCanvas::GetShowENCDataQual ( )
inline

Definition at line 646 of file chcanv.h.

◆ GetShowENCDepth()

bool ChartCanvas::GetShowENCDepth ( )
inline

Definition at line 629 of file chcanv.h.

◆ GetShowENCLightDesc()

bool ChartCanvas::GetShowENCLightDesc ( )
inline

Definition at line 632 of file chcanv.h.

◆ GetShowENCLights()

bool ChartCanvas::GetShowENCLights ( )
inline

Definition at line 638 of file chcanv.h.

◆ GetShowENCText()

bool ChartCanvas::GetShowENCText ( )
inline

Definition at line 626 of file chcanv.h.

◆ GetShowFocusBar()

bool ChartCanvas::GetShowFocusBar ( )
inline

Definition at line 622 of file chcanv.h.

◆ GetShowGPSCompassWindow()

bool ChartCanvas::GetShowGPSCompassWindow ( )
inline

Definition at line 760 of file chcanv.h.

◆ GetShowGrid()

bool ChartCanvas::GetShowGrid ( )
inline

Definition at line 603 of file chcanv.h.

◆ GetShowOutlines()

bool ChartCanvas::GetShowOutlines ( )
inline

Definition at line 605 of file chcanv.h.

◆ GetShowVisibleSectors()

bool ChartCanvas::GetShowVisibleSectors ( )
inline

Definition at line 540 of file chcanv.h.

◆ getTCWin()

TCWin * ChartCanvas::getTCWin ( )
inline

Definition at line 464 of file chcanv.h.

◆ GetTideBitmap()

wxBitmap & ChartCanvas::GetTideBitmap ( )
inline

Definition at line 444 of file chcanv.h.

◆ GetUpMode()

int ChartCanvas::GetUpMode ( )
inline

Definition at line 447 of file chcanv.h.

◆ GetVP()

ViewPort & ChartCanvas::GetVP ( )

Definition at line 2601 of file chcanv.cpp.

◆ GetVPChartScale()

float ChartCanvas::GetVPChartScale ( )
inline

Return the ViewPort chart scale denominator (e.g., 50000 for a 1:50000 scale).

Definition at line 502 of file chcanv.h.

◆ GetVPRotation()

double ChartCanvas::GetVPRotation ( void  )
inline

Definition at line 337 of file chcanv.h.

◆ GetVPScale()

float ChartCanvas::GetVPScale ( )
inlineoverridevirtual

Return ViewPort scale factor, in physical pixels per meter.

Implements AbstractChartCanvas.

Definition at line 183 of file chcanv.h.

◆ GetVPSkew()

double ChartCanvas::GetVPSkew ( void  )
inline

Definition at line 338 of file chcanv.h.

◆ GetVPTilt()

double ChartCanvas::GetVPTilt ( void  )
inline

Definition at line 339 of file chcanv.h.

◆ GetWindow()

wxWindow * ChartCanvas::GetWindow ( )
inlineoverridevirtual

Implements AbstractChartCanvas.

Definition at line 199 of file chcanv.h.

◆ GetWorldBackgroundChart()

GSHHSChart * ChartCanvas::GetWorldBackgroundChart ( )
inline

Definition at line 530 of file chcanv.h.

◆ HandlePianoClick()

void ChartCanvas::HandlePianoClick ( int  selected_index,
const std::vector< int > &  selected_dbIndex_array 
)

Definition at line 14375 of file chcanv.cpp.

◆ HandlePianoRClick()

void ChartCanvas::HandlePianoRClick ( int  x,
int  y,
int  selected_index,
const std::vector< int > &  selected_dbIndex_array 
)

Definition at line 14515 of file chcanv.cpp.

◆ HandlePianoRollover()

void ChartCanvas::HandlePianoRollover ( int  selected_index,
const std::vector< int > &  selected_dbIndex_array,
int  n_charts,
int  scale 
)

Definition at line 14528 of file chcanv.cpp.

◆ HideChartInfoWindow()

void ChartCanvas::HideChartInfoWindow ( void  )

Definition at line 7326 of file chcanv.cpp.

◆ HideGlobalToolbar()

void ChartCanvas::HideGlobalToolbar ( )

Definition at line 11245 of file chcanv.cpp.

◆ InvalidateAllQuiltPatchs()

void ChartCanvas::InvalidateAllQuiltPatchs ( void  )

Definition at line 2509 of file chcanv.cpp.

◆ InvalidateGL()

void ChartCanvas::InvalidateGL ( )

Definition at line 2409 of file chcanv.cpp.

◆ InvalidateQuilt()

void ChartCanvas::InvalidateQuilt ( void  )

Definition at line 2558 of file chcanv.cpp.

◆ IsChartLargeEnoughToRender()

bool ChartCanvas::IsChartLargeEnoughToRender ( ChartBase chart,
ViewPort vp 
)

Definition at line 2568 of file chcanv.cpp.

◆ IsChartQuiltableRef()

bool ChartCanvas::IsChartQuiltableRef ( int  db_index)

Definition at line 2564 of file chcanv.cpp.

◆ isMarkEditing()

bool ChartCanvas::isMarkEditing ( void  )
inline

Definition at line 528 of file chcanv.h.

◆ IsMeasureActive()

bool ChartCanvas::IsMeasureActive ( )
inline

Definition at line 443 of file chcanv.h.

◆ IsOwnshipOnScreen()

bool ChartCanvas::IsOwnshipOnScreen ( )

Definition at line 5195 of file chcanv.cpp.

◆ IsPianoContextMenuActive()

bool ChartCanvas::IsPianoContextMenuActive ( )
inline

Definition at line 756 of file chcanv.h.

◆ IsPrimaryCanvas()

bool ChartCanvas::IsPrimaryCanvas ( )
inline

Definition at line 258 of file chcanv.h.

◆ IsQuiltDelta()

bool ChartCanvas::IsQuiltDelta ( void  )

Definition at line 2489 of file chcanv.cpp.

◆ isRouteEditing()

bool ChartCanvas::isRouteEditing ( void  )
inline

Definition at line 525 of file chcanv.h.

◆ IsTideDialogOpen()

bool ChartCanvas::IsTideDialogOpen ( ) const
Returns
true if a tide dialog is currently open and visible

Definition at line 13789 of file chcanv.cpp.

◆ IsTileOverlayIndexInNoShow()

bool ChartCanvas::IsTileOverlayIndexInNoShow ( int  index)

Definition at line 14355 of file chcanv.cpp.

◆ IsTileOverlayIndexInYesShow()

bool ChartCanvas::IsTileOverlayIndexInYesShow ( int  index)

Definition at line 14349 of file chcanv.cpp.

◆ JaggyCircle()

void ChartCanvas::JaggyCircle ( ocpnDC dc,
wxPen  pen,
int  x,
int  y,
int  radius 
)

Definition at line 6763 of file chcanv.cpp.

◆ JumpToPosition()

void ChartCanvas::JumpToPosition ( double  lat,
double  lon,
double  scale 
)

Definition at line 4958 of file chcanv.cpp.

◆ LoadVP()

void ChartCanvas::LoadVP ( ViewPort vp,
bool  b_adjust = true 
)

Definition at line 5211 of file chcanv.cpp.

◆ LostMouseCapture()

void ChartCanvas::LostMouseCapture ( wxMouseCaptureLostEvent &  event)

Definition at line 10480 of file chcanv.cpp.

◆ MouseEventChartBar()

bool ChartCanvas::MouseEventChartBar ( wxMouseEvent &  event)

Definition at line 7756 of file chcanv.cpp.

◆ MouseEventIENCBar()

bool ChartCanvas::MouseEventIENCBar ( wxMouseEvent &  event)

Definition at line 7781 of file chcanv.cpp.

◆ MouseEventMUIBar()

bool ChartCanvas::MouseEventMUIBar ( wxMouseEvent &  event)

Definition at line 7795 of file chcanv.cpp.

◆ MouseEventOverlayWindows()

bool ChartCanvas::MouseEventOverlayWindows ( wxMouseEvent &  event)

Definition at line 7698 of file chcanv.cpp.

◆ MouseEventProcessCanvas()

bool ChartCanvas::MouseEventProcessCanvas ( wxMouseEvent &  event)

Processes mouse events for core chart panning and zooming operations.

This method handles the main chart navigation interactions:

  • Mouse wheel zooming with configurable sensitivity and optional smoothing.
  • Left-click chart centering. Centers chart on click point in non-drag scenarios.
  • Click-and-drag panning. Updates chart position continuously during drag.
Parameters
eventThe mouse event to process
Returns
true if event was processed, false to allow focus shifting between canvases.
Note
Interacts with route creation and measurement tools active states

Definition at line 10244 of file chcanv.cpp.

◆ MouseEventProcessObjects()

bool ChartCanvas::MouseEventProcessObjects ( wxMouseEvent &  event)

Definition at line 8319 of file chcanv.cpp.

◆ MouseEventSetup()

bool ChartCanvas::MouseEventSetup ( wxMouseEvent &  event,
bool  b_handle_dclick = true 
)

g_btouch

Definition at line 7808 of file chcanv.cpp.

◆ MouseEventToolbar()

bool ChartCanvas::MouseEventToolbar ( wxMouseEvent &  event)

Definition at line 7766 of file chcanv.cpp.

◆ OnDeferredFocusTimerEvent()

void ChartCanvas::OnDeferredFocusTimerEvent ( wxTimerEvent &  event)

Definition at line 2630 of file chcanv.cpp.

◆ OnKeyChar()

void ChartCanvas::OnKeyChar ( wxKeyEvent &  event)

Definition at line 2635 of file chcanv.cpp.

◆ OnKeyDown()

void ChartCanvas::OnKeyDown ( wxKeyEvent &  event)

Definition at line 2675 of file chcanv.cpp.

◆ OnKeyUp()

void ChartCanvas::OnKeyUp ( wxKeyEvent &  event)

Definition at line 3279 of file chcanv.cpp.

◆ OnKillFocus()

void ChartCanvas::OnKillFocus ( wxFocusEvent &  WXUNUSEDevent)

Definition at line 930 of file chcanv.cpp.

◆ OnPaint()

void ChartCanvas::OnPaint ( wxPaintEvent &  event)

TODO UpdateCanvasS52PLIBConfig();

Definition at line 11835 of file chcanv.cpp.

◆ OnPianoMenuDisableChart()

void ChartCanvas::OnPianoMenuDisableChart ( wxCommandEvent &  event)

Definition at line 14777 of file chcanv.cpp.

◆ OnPianoMenuEnableChart()

void ChartCanvas::OnPianoMenuEnableChart ( wxCommandEvent &  event)

Definition at line 14766 of file chcanv.cpp.

◆ OnRouteFinishTimerEvent()

void ChartCanvas::OnRouteFinishTimerEvent ( wxTimerEvent &  event)

Definition at line 963 of file chcanv.cpp.

◆ OnSetFocus()

void ChartCanvas::OnSetFocus ( wxFocusEvent &  WXUNUSEDevent)

Definition at line 953 of file chcanv.cpp.

◆ OnToolLeftClick()

void ChartCanvas::OnToolLeftClick ( wxCommandEvent &  event)

Definition at line 14027 of file chcanv.cpp.

◆ PaintCleanup()

void ChartCanvas::PaintCleanup ( )

Definition at line 12469 of file chcanv.cpp.

◆ PanCanvas()

bool ChartCanvas::PanCanvas ( double  dx,
double  dy 
)

Pans (moves) the canvas by the specified physical pixels in x and y directions.

Definition at line 5079 of file chcanv.cpp.

◆ PianoPopupMenu()

void ChartCanvas::PianoPopupMenu ( int  x,
int  y,
int  selected_index,
const std::vector< int > &  selected_dbIndex_array 
)

Definition at line 14701 of file chcanv.cpp.

◆ PopupMenuHandler()

void ChartCanvas::PopupMenuHandler ( wxCommandEvent &  event)

Definition at line 11159 of file chcanv.cpp.

◆ PrepareContextSelections()

int ChartCanvas::PrepareContextSelections ( double  lat,
double  lon 
)

in touch mode a route point could have been selected and draghandle icon shown so clear the selection

Definition at line 7999 of file chcanv.cpp.

◆ ProcessNewGUIScale()

void ChartCanvas::ProcessNewGUIScale ( )

Definition at line 7131 of file chcanv.cpp.

◆ RebuildCursors()

void ChartCanvas::RebuildCursors ( )

Definition at line 771 of file chcanv.cpp.

◆ Refresh()

void ChartCanvas::Refresh ( bool  eraseBackground = true,
const wxRect *  rect = nullptr 
)
overridevirtual

Implements AbstractChartCanvas.

Definition at line 12631 of file chcanv.cpp.

◆ ReloadVP()

void ChartCanvas::ReloadVP ( bool  b_adjust = true)
overridevirtual

Implements AbstractChartCanvas.

Definition at line 5205 of file chcanv.cpp.

◆ RemoveChartFromQuilt()

void ChartCanvas::RemoveChartFromQuilt ( int  dbIndex)

Definition at line 14817 of file chcanv.cpp.

◆ RenderAlertMessage()

void ChartCanvas::RenderAlertMessage ( wxDC &  dc,
const ViewPort vp 
)

Definition at line 14924 of file chcanv.cpp.

◆ ResetGlGridFont()

void ChartCanvas::ResetGlGridFont ( )
overridevirtual

Implements AbstractChartCanvas.

Definition at line 6179 of file chcanv.cpp.

◆ ResetGridFont()

void ChartCanvas::ResetGridFont ( )
inlineoverridevirtual

Implements AbstractChartCanvas.

Definition at line 190 of file chcanv.h.

◆ ResetOwnshipOffset()

void ChartCanvas::ResetOwnshipOffset ( )
inline

Definition at line 885 of file chcanv.h.

◆ ResetWorldBackgroundChart()

void ChartCanvas::ResetWorldBackgroundChart ( )
inline

Definition at line 531 of file chcanv.h.

◆ RotateCanvas()

void ChartCanvas::RotateCanvas ( double  dir)

Definition at line 4830 of file chcanv.cpp.

◆ selectCanvasChartDisplay()

void ChartCanvas::selectCanvasChartDisplay ( int  type,
int  family 
)

Definition at line 14290 of file chcanv.cpp.

◆ SelectChartFromStack()

void ChartCanvas::SelectChartFromStack ( int  index,
bool  bDir = false,
ChartTypeEnum  New_Type = CHART_TYPE_DONTCARE,
ChartFamilyEnum  New_Family = CHART_FAMILY_DONTCARE 
)

Definition at line 14190 of file chcanv.cpp.

◆ SelectdbChart()

void ChartCanvas::SelectdbChart ( int  dbindex)

Definition at line 14247 of file chcanv.cpp.

◆ SelectQuiltRefChart()

void ChartCanvas::SelectQuiltRefChart ( int  selected_index)

Definition at line 1986 of file chcanv.cpp.

◆ SelectQuiltRefdbChart()

void ChartCanvas::SelectQuiltRefdbChart ( int  db_index,
bool  b_autoscale = true 
)

Definition at line 1969 of file chcanv.cpp.

◆ SetAbsoluteMinScale()

void ChartCanvas::SetAbsoluteMinScale ( double  min_scale)

Definition at line 4824 of file chcanv.cpp.

◆ SetAISCanvasDisplayStyle()

void ChartCanvas::SetAISCanvasDisplayStyle ( int  StyleIndx)

Definition at line 14108 of file chcanv.cpp.

◆ SetAlertString()

void ChartCanvas::SetAlertString ( wxString  str)
inline

Definition at line 624 of file chcanv.h.

◆ SetAttenAIS()

void ChartCanvas::SetAttenAIS ( bool  show)

Definition at line 14102 of file chcanv.cpp.

◆ SetbFollow()

void ChartCanvas::SetbFollow ( void  )

Definition at line 4884 of file chcanv.cpp.

◆ SetbShowCurrent()

void ChartCanvas::SetbShowCurrent ( bool  f)
inline

Definition at line 535 of file chcanv.h.

◆ SetbShowTide()

void ChartCanvas::SetbShowTide ( bool  f)
inline

Definition at line 537 of file chcanv.h.

◆ SetbTCUpdate()

void ChartCanvas::SetbTCUpdate ( bool  f)
inline

Definition at line 533 of file chcanv.h.

◆ SetCanvasCursor()

void ChartCanvas::SetCanvasCursor ( wxMouseEvent &  event)

Definition at line 10451 of file chcanv.cpp.

◆ SetCanvasRangeMeters()

void ChartCanvas::SetCanvasRangeMeters ( double  range)
overridevirtual

Implements AbstractChartCanvas.

Definition at line 2218 of file chcanv.cpp.

◆ SetColorScheme()

void ChartCanvas::SetColorScheme ( ColorScheme  cs)

Definition at line 3723 of file chcanv.cpp.

◆ SetCursor()

bool ChartCanvas::SetCursor ( const wxCursor &  c)
override

Definition at line 12622 of file chcanv.cpp.

◆ SetCursorStatus()

void ChartCanvas::SetCursorStatus ( double  cursor_lat,
double  cursor_lon 
)

Definition at line 4351 of file chcanv.cpp.

◆ SetDisplaySizeMM()

void ChartCanvas::SetDisplaySizeMM ( double  size)

Set the width of the screen in millimeters.

Definition at line 2343 of file chcanv.cpp.

◆ SetENCDisplayCategory()

void ChartCanvas::SetENCDisplayCategory ( int  category)

Definition at line 14873 of file chcanv.cpp.

◆ SetFirstAuto()

void ChartCanvas::SetFirstAuto ( bool  b_auto)
inline

Definition at line 347 of file chcanv.h.

◆ SetGroupIndex()

void ChartCanvas::SetGroupIndex ( int  index,
bool  autoswitch = false 
)

Definition at line 1319 of file chcanv.cpp.

◆ SetMUIBarPosition()

void ChartCanvas::SetMUIBarPosition ( )

Definition at line 7158 of file chcanv.cpp.

◆ SetOwnShipState()

void ChartCanvas::SetOwnShipState ( ownship_state_t  state)
inline

Definition at line 544 of file chcanv.h.

◆ SetQuiltChartHiLiteIndex()

void ChartCanvas::SetQuiltChartHiLiteIndex ( int  dbIndex)

Definition at line 2525 of file chcanv.cpp.

◆ SetQuiltChartHiLiteIndexArray()

void ChartCanvas::SetQuiltChartHiLiteIndexArray ( std::vector< int >  hilite_array)

Definition at line 2529 of file chcanv.cpp.

◆ SetQuiltMode()

void ChartCanvas::SetQuiltMode ( bool  b_quilt)

Definition at line 2498 of file chcanv.cpp.

◆ SetQuiltRefChart()

void ChartCanvas::SetQuiltRefChart ( int  dbIndex)

Definition at line 5239 of file chcanv.cpp.

◆ SetShowAIS()

void ChartCanvas::SetShowAIS ( bool  show)

Definition at line 14096 of file chcanv.cpp.

◆ SetShowDepthUnits()

void ChartCanvas::SetShowDepthUnits ( bool  show)
inline

Definition at line 602 of file chcanv.h.

◆ SetShowENCAnchor()

void ChartCanvas::SetShowENCAnchor ( bool  show)

Definition at line 14907 of file chcanv.cpp.

◆ SetShowENCBuoyLabels()

void ChartCanvas::SetShowENCBuoyLabels ( bool  show)

Definition at line 14894 of file chcanv.cpp.

◆ SetShowENCDataQual()

void ChartCanvas::SetShowENCDataQual ( bool  show)

Definition at line 14857 of file chcanv.cpp.

◆ SetShowENCDepth()

void ChartCanvas::SetShowENCDepth ( bool  show)

Definition at line 14878 of file chcanv.cpp.

◆ SetShowENCLightDesc()

void ChartCanvas::SetShowENCLightDesc ( bool  show)

Definition at line 14886 of file chcanv.cpp.

◆ SetShowENCLights()

void ChartCanvas::SetShowENCLights ( bool  show)

Definition at line 14899 of file chcanv.cpp.

◆ SetShowENCText()

void ChartCanvas::SetShowENCText ( bool  show)

Definition at line 14865 of file chcanv.cpp.

◆ SetShowFocusBar()

void ChartCanvas::SetShowFocusBar ( bool  enable)
inline

Definition at line 621 of file chcanv.h.

◆ SetShowGPS()

void ChartCanvas::SetShowGPS ( bool  show)

Definition at line 1223 of file chcanv.cpp.

◆ SetShowGPSCompassWindow()

void ChartCanvas::SetShowGPSCompassWindow ( bool  bshow)

Definition at line 1233 of file chcanv.cpp.

◆ SetShowGrid()

void ChartCanvas::SetShowGrid ( bool  show)
inline

Definition at line 604 of file chcanv.h.

◆ SetShowOutlines()

void ChartCanvas::SetShowOutlines ( bool  show)
inline

Definition at line 606 of file chcanv.h.

◆ SetShowVisibleSectors()

void ChartCanvas::SetShowVisibleSectors ( bool  val)
inline

Definition at line 539 of file chcanv.h.

◆ SetupCanvasQuiltMode()

void ChartCanvas::SetupCanvasQuiltMode ( void  )

Definition at line 2039 of file chcanv.cpp.

◆ SetupGlCanvas()

void ChartCanvas::SetupGlCanvas ( )

Definition at line 854 of file chcanv.cpp.

◆ SetupGlCompression()

void ChartCanvas::SetupGlCompression ( )
overridevirtual

Implements AbstractChartCanvas.

Definition at line 6181 of file chcanv.cpp.

◆ SetupGridFont()

void ChartCanvas::SetupGridFont ( )

Definition at line 762 of file chcanv.cpp.

◆ SetUpMode()

void ChartCanvas::SetUpMode ( int  mode)

Definition at line 3387 of file chcanv.cpp.

◆ SetUserOwnship()

bool ChartCanvas::SetUserOwnship ( )

Definition at line 2227 of file chcanv.cpp.

◆ SetViewPoint() [1/2]

bool ChartCanvas::SetViewPoint ( double  lat,
double  lon 
)

Centers the view on a specific lat/lon position.

Parameters
latLatitude in degrees
lonLongitude in degrees
Returns
true if view was changed successfully

Definition at line 5378 of file chcanv.cpp.

◆ SetViewPoint() [2/2]

bool ChartCanvas::SetViewPoint ( double  lat,
double  lon,
double  scale_ppm,
double  skew,
double  rotation,
int  projection = 0,
bool  b_adjust = true,
bool  b_refresh = true 
)

Set the viewport center point, scale, skew, rotation and projection.

Parameters
latLatitude of viewport center in degrees.
lonLongitude of viewport center in degrees.
scale_ppmRequested viewport scale in physical pixels per meter. This is the desired rendering scale before projection effects.
skewChart skew angle in radians.
rotationViewport rotation in radians.
projectionProjection type (default=0). If 0, maintains current projection.
b_adjustAllow small viewport adjustments for performance.
b_refreshRequest screen refresh after change.

Definition at line 5387 of file chcanv.cpp.

◆ SetViewPointByCorners()

bool ChartCanvas::SetViewPointByCorners ( double  latSW,
double  lonSW,
double  latNE,
double  lonNE 
)

Definition at line 5341 of file chcanv.cpp.

◆ SetVP()

void ChartCanvas::SetVP ( ViewPort vp)

Definition at line 2603 of file chcanv.cpp.

◆ SetVPProjection()

bool ChartCanvas::SetVPProjection ( int  projection)

Definition at line 5364 of file chcanv.cpp.

◆ SetVPRotation()

bool ChartCanvas::SetVPRotation ( double  angle)

Definition at line 5383 of file chcanv.cpp.

◆ SetVPScale()

bool ChartCanvas::SetVPScale ( double  sc,
bool  b_refresh = true 
)

Sets the viewport scale while maintaining the center point.

Changes the chart display scale while preserving the current view center, orientation, skew, and projection settings. This is typically used for zoom operations.

Parameters
scaleThe new viewport scale to set (pixels per meter)
refreshWhether to refresh the display after changing the scale
Returns
bool True if the scale change was successful

Definition at line 5359 of file chcanv.cpp.

◆ Show()

bool ChartCanvas::Show ( bool  show = true)
inlineoverridevirtual

Implements AbstractChartCanvas.

Definition at line 185 of file chcanv.h.

◆ ShowAISTargetList()

void ChartCanvas::ShowAISTargetList ( void  )

Definition at line 11257 of file chcanv.cpp.

◆ ShowChartInfoWindow()

void ChartCanvas::ShowChartInfoWindow ( int  x,
int  dbIndex 
)

Definition at line 7279 of file chcanv.cpp.

◆ ShowCompositeInfoWindow()

void ChartCanvas::ShowCompositeInfoWindow ( int  x,
int  n_charts,
int  scale,
const std::vector< int > &  index_vector 
)

Definition at line 7194 of file chcanv.cpp.

◆ ShowCurrents()

void ChartCanvas::ShowCurrents ( bool  bShow)

Definition at line 1287 of file chcanv.cpp.

◆ ShowGlobalToolbar()

void ChartCanvas::ShowGlobalToolbar ( )

Definition at line 11251 of file chcanv.cpp.

◆ ShowMarkPropertiesDialog()

void ChartCanvas::ShowMarkPropertiesDialog ( RoutePoint markPoint)

Definition at line 10765 of file chcanv.cpp.

◆ ShowObjectQueryWindow()

void ChartCanvas::ShowObjectQueryWindow ( int  x,
int  y,
float  zlat,
float  zlon 
)

Definition at line 10484 of file chcanv.cpp.

◆ ShowRoutePropertiesDialog()

void ChartCanvas::ShowRoutePropertiesDialog ( wxString  title,
Route selected 
)

Definition at line 10823 of file chcanv.cpp.

◆ ShowSingleTideDialog()

void ChartCanvas::ShowSingleTideDialog ( int  x,
int  y,
void *  pvIDX 
)

Display tide/current dialog with single-instance management.

Handles the following scenarios:

  • If no dialog exists: Creates new dialog
  • If same station clicked: Brings existing dialog to front with visual feedback
  • If different station clicked: Closes current dialog and opens new one
    Parameters
    xMouse click x-coordinate in canvas pixels
    yMouse click y-coordinate in canvas pixels
    pvIDXPointer to IDX_entry for the tide/current station

Definition at line 13750 of file chcanv.cpp.

◆ ShowTides()

void ChartCanvas::ShowTides ( bool  bShow)

Definition at line 1262 of file chcanv.cpp.

◆ ShowTrackPropertiesDialog()

void ChartCanvas::ShowTrackPropertiesDialog ( Track selected)

Definition at line 10867 of file chcanv.cpp.

◆ StartChartDragInertia()

void ChartCanvas::StartChartDragInertia ( )

Definition at line 3435 of file chcanv.cpp.

◆ StartMeasureRoute()

void ChartCanvas::StartMeasureRoute ( )

Definition at line 2574 of file chcanv.cpp.

◆ StartRoute()

void ChartCanvas::StartRoute ( void  )

Definition at line 11168 of file chcanv.cpp.

◆ StartTimedMovement()

bool ChartCanvas::StartTimedMovement ( bool  stoptimer = true)

Definition at line 3548 of file chcanv.cpp.

◆ StartTimedMovementTarget()

void ChartCanvas::StartTimedMovementTarget ( )

Definition at line 3618 of file chcanv.cpp.

◆ StartTimedMovementVP()

void ChartCanvas::StartTimedMovementVP ( double  target_lat,
double  target_lon,
int  nstep 
)

Definition at line 3565 of file chcanv.cpp.

◆ StopMovement()

void ChartCanvas::StopMovement ( )

Definition at line 3530 of file chcanv.cpp.

◆ StopMovementTarget()

void ChartCanvas::StopMovementTarget ( )

Definition at line 3622 of file chcanv.cpp.

◆ StopMovementVP()

void ChartCanvas::StopMovementVP ( )

Definition at line 3614 of file chcanv.cpp.

◆ ThawPiano()

void ChartCanvas::ThawPiano ( )
inline

Definition at line 762 of file chcanv.h.

◆ TogglebFollow()

void ChartCanvas::TogglebFollow ( void  )

Definition at line 4865 of file chcanv.cpp.

◆ ToggleCanvasQuiltMode()

void ChartCanvas::ToggleCanvasQuiltMode ( void  )

Definition at line 13919 of file chcanv.cpp.

◆ ToggleChartOutlines()

void ChartCanvas::ToggleChartOutlines ( void  )

Definition at line 3370 of file chcanv.cpp.

◆ ToggleCPAWarn()

void ChartCanvas::ToggleCPAWarn ( )

Definition at line 7022 of file chcanv.cpp.

◆ ToggleLookahead()

void ChartCanvas::ToggleLookahead ( )

Definition at line 3381 of file chcanv.cpp.

◆ TouchAISToolActive()

void ChartCanvas::TouchAISToolActive ( void  )

Definition at line 14148 of file chcanv.cpp.

◆ TriggerDeferredFocus()

void ChartCanvas::TriggerDeferredFocus ( )
overridevirtual

Implements AbstractChartCanvas.

Definition at line 2614 of file chcanv.cpp.

◆ UnlockQuilt()

void ChartCanvas::UnlockQuilt ( )

Definition at line 2491 of file chcanv.cpp.

◆ Update()

void ChartCanvas::Update ( )
override

Definition at line 12684 of file chcanv.cpp.

◆ UpdateAIS()

void ChartCanvas::UpdateAIS ( )

Definition at line 6960 of file chcanv.cpp.

◆ UpdateAISTBTool()

void ChartCanvas::UpdateAISTBTool ( void  )

Definition at line 14150 of file chcanv.cpp.

◆ UpdateAlerts()

void ChartCanvas::UpdateAlerts ( )

Definition at line 6910 of file chcanv.cpp.

◆ UpdateCanvasControlBar()

void ChartCanvas::UpdateCanvasControlBar ( void  )

Definition at line 14590 of file chcanv.cpp.

◆ UpdateCanvasOnGroupChange()

void ChartCanvas::UpdateCanvasOnGroupChange ( void  )

Definition at line 5328 of file chcanv.cpp.

◆ UpdateCanvasS52PLIBConfig()

void ChartCanvas::UpdateCanvasS52PLIBConfig ( )

Definition at line 11756 of file chcanv.cpp.

◆ UpdateFollowButtonState()

void ChartCanvas::UpdateFollowButtonState ( void  )

Definition at line 4916 of file chcanv.cpp.

◆ UpdateGPSCompassStatusBox()

void ChartCanvas::UpdateGPSCompassStatusBox ( bool  b_force_new)

Definition at line 14158 of file chcanv.cpp.

◆ UpdateShips()

void ChartCanvas::UpdateShips ( )

Definition at line 6862 of file chcanv.cpp.

◆ WarpPointerDeferred()

void ChartCanvas::WarpPointerDeferred ( int  x,
int  y 
)

Definition at line 11748 of file chcanv.cpp.

◆ ZoomCanvas()

void ChartCanvas::ZoomCanvas ( double  factor,
bool  can_zoom_to_cursor = true,
bool  stoptimer = true 
)

Perform a smooth zoom operation on the chart canvas by the specified factor.

The zoom can either be centered on the cursor position or the center of the viewport.

Parameters
factorThe zoom factor to apply:
  • factor > 1: Zoom in, e.g. 2.0 makes objects twice as large
  • factor < 1: Zoom out, e.g. 0.5 makes objects half as large
can_zoom_to_cursorIf true, zoom operation will be centered on current cursor position. If false, zoom operation centers on current viewport center.
stoptimerIf true, stops any ongoing movement/zoom operations before starting this zoom. If false, allows this zoom to blend with existing operations.

Definition at line 4634 of file chcanv.cpp.

◆ ZoomCanvasSimple()

void ChartCanvas::ZoomCanvasSimple ( double  factor)

Perform an immediate zoom operation without smooth transitions.

This is a simplified version of ZoomCanvas that applies the zoom immediately without animation or cursor-centering logic. Typically used for programmatic zooming.

Parameters
factorThe zoom factor to apply:
  • factor > 1: Zoom in, e.g. 2.0 makes objects twice as large chcanv - factor < 1: Zoom out, e.g. 0.5 makes objects half as large

Definition at line 4628 of file chcanv.cpp.

Friends And Related Symbol Documentation

◆ glChartCanvas

friend class glChartCanvas
friend

Definition at line 174 of file chcanv.h.

Member Data Documentation

◆ json_msg

EventVar ChartCanvas::json_msg

Notified with message targeting all plugins.

Contains a message type string and a wxJSONValue shared_ptr.

Definition at line 896 of file chcanv.h.

◆ m_active_upload_port

wxString ChartCanvas::m_active_upload_port

Definition at line 668 of file chcanv.h.

◆ m_b_paint_enable

bool ChartCanvas::m_b_paint_enable

Definition at line 863 of file chcanv.h.

◆ m_bAppendingRoute

bool ChartCanvas::m_bAppendingRoute

Definition at line 835 of file chcanv.h.

◆ m_bFollow

bool ChartCanvas::m_bFollow

Definition at line 767 of file chcanv.h.

◆ m_bLookAhead

bool ChartCanvas::m_bLookAhead

Definition at line 813 of file chcanv.h.

◆ m_bMeasure_Active

bool ChartCanvas::m_bMeasure_Active

Definition at line 663 of file chcanv.h.

◆ m_bMeasure_DistCircle

bool ChartCanvas::m_bMeasure_DistCircle

Definition at line 834 of file chcanv.h.

◆ m_brepaint_piano

bool ChartCanvas::m_brepaint_piano

Definition at line 773 of file chcanv.h.

◆ m_bShowNavobjects

bool ChartCanvas::m_bShowNavobjects

Definition at line 810 of file chcanv.h.

◆ m_canvasIndex

int ChartCanvas::m_canvasIndex

Definition at line 650 of file chcanv.h.

◆ m_canvasMenu

CanvasMenuHandler* ChartCanvas::m_canvasMenu

Definition at line 839 of file chcanv.h.

◆ m_cursor_lat

double ChartCanvas::m_cursor_lat

The latitude in degrees corresponding to the most recently processed cursor position.

This variable does NOT continuously track the mouse cursor position. It is updated only:

  1. When processing left mouse clicks
  2. During panning operations via mouse dragging
  3. When the OnCursorTrackTimerEvent fires after mouse movement stops
  4. During certain object selection and editing operations

For code that needs the current geographic coordinates under the current mouse pointer, use GetCanvasPixPoint(mouse_x, mouse_y, lat, lon) instead of accessing this variable directly.

Definition at line 805 of file chcanv.h.

◆ m_cursor_lon

double ChartCanvas::m_cursor_lon

The longitude in degrees corresponding to the most recently processed cursor position.

This variable does NOT continuously track the mouse cursor position. It is updated only:

  1. When processing left mouse clicks
  2. During panning operations via mouse dragging
  3. When the OnCursorTrackTimerEvent fires after mouse movement stops
  4. During certain object selection and editing operations

For code that needs the current geographic coordinates under the current mouse pointer, use GetCanvasPixPoint(mouse_x, mouse_y, lat, lon) instead of accessing this variable directly.

Definition at line 789 of file chcanv.h.

◆ m_FinishRouteOnKillFocus

bool ChartCanvas::m_FinishRouteOnKillFocus

Definition at line 833 of file chcanv.h.

◆ m_groupIndex

int ChartCanvas::m_groupIndex

Definition at line 661 of file chcanv.h.

◆ m_inPinch

bool ChartCanvas::m_inPinch

Definition at line 898 of file chcanv.h.

◆ m_nMeasureState

int ChartCanvas::m_nMeasureState

Definition at line 836 of file chcanv.h.

◆ m_pMeasureRoute

Route* ChartCanvas::m_pMeasureRoute

Definition at line 837 of file chcanv.h.

◆ m_pMouseRoute

Route* ChartCanvas::m_pMouseRoute

Definition at line 662 of file chcanv.h.

◆ m_pQuilt

Quilt* ChartCanvas::m_pQuilt

Definition at line 666 of file chcanv.h.

◆ m_prev_pMousePoint

RoutePoint* ChartCanvas::m_prev_pMousePoint

Definition at line 809 of file chcanv.h.

◆ m_prev_rlat

double ChartCanvas::m_prev_rlat

Definition at line 807 of file chcanv.h.

◆ m_prev_rlon

double ChartCanvas::m_prev_rlon

Definition at line 808 of file chcanv.h.

◆ m_quilt_noshow_index_array

std::vector<int> ChartCanvas::m_quilt_noshow_index_array

Definition at line 870 of file chcanv.h.

◆ m_routeState

int ChartCanvas::m_routeState

Definition at line 811 of file chcanv.h.

◆ m_singleChart

ChartBase* ChartCanvas::m_singleChart

Definition at line 665 of file chcanv.h.

◆ m_tile_noshow_index_array

std::vector<int> ChartCanvas::m_tile_noshow_index_array

Definition at line 868 of file chcanv.h.

◆ m_tile_yesshow_index_array

std::vector<int> ChartCanvas::m_tile_yesshow_index_array

Definition at line 869 of file chcanv.h.

◆ m_upMode

int ChartCanvas::m_upMode

Definition at line 812 of file chcanv.h.

◆ parent_frame

wxWindow* ChartCanvas::parent_frame

Definition at line 838 of file chcanv.h.

◆ pCursorArrow

wxCursor* ChartCanvas::pCursorArrow

Definition at line 769 of file chcanv.h.

◆ pCursorCross

wxCursor* ChartCanvas::pCursorCross

Definition at line 770 of file chcanv.h.

◆ pCursorPencil

wxCursor* ChartCanvas::pCursorPencil

Definition at line 768 of file chcanv.h.

◆ pCwin

TCWin* ChartCanvas::pCwin

Definition at line 772 of file chcanv.h.

◆ pPlugIn_Cursor

wxCursor* ChartCanvas::pPlugIn_Cursor

Definition at line 771 of file chcanv.h.

◆ r_rband

wxPoint ChartCanvas::r_rband

Definition at line 806 of file chcanv.h.

◆ undo

Undo* ChartCanvas::undo

Definition at line 445 of file chcanv.h.


The documentation for this class was generated from the following files: