31#include <unordered_map>
36#include <wx/dcmemory.h>
38#include <wx/glcanvas.h>
39#include <wx/notebook.h>
45extern wxWindow* gFrame;
77 static wxBitmap* bitmap = 0;
78 if (!bitmap) bitmap =
new wxBitmap(1, 1);
82opencpn_plugin::~opencpn_plugin() {}
84int opencpn_plugin::Init(
void) {
return 0; }
86bool opencpn_plugin::DeInit(
void) {
return true; }
88int opencpn_plugin::GetAPIVersionMajor() {
return 1; }
90int opencpn_plugin::GetAPIVersionMinor() {
return 2; }
92int opencpn_plugin::GetPlugInVersionMajor() {
return 1; }
94int opencpn_plugin::GetPlugInVersionMinor() {
return 0; }
96wxString opencpn_plugin::GetCommonName() {
return "BaseClassCommonName"; }
98wxString opencpn_plugin::GetShortDescription() {
99 return "OpenCPN PlugIn Base Class";
102wxString opencpn_plugin::GetLongDescription() {
103 return "OpenCPN PlugIn Base Class\n\
104PlugInManager created this base class";
113int opencpn_plugin::GetToolbarToolCount(
void) {
return 0; }
115int opencpn_plugin::GetToolboxPanelCount(
void) {
return 0; }
117void opencpn_plugin::SetupToolboxPanel(
int page_sel, wxNotebook* pnotebook) {}
119void opencpn_plugin::OnCloseToolboxPanel(
int page_sel,
int ok_apply_cancel) {}
121void opencpn_plugin::ShowPreferencesDialog(wxWindow* parent) {}
123void opencpn_plugin::OnToolbarToolCallback(
int id) {}
125void opencpn_plugin::OnContextMenuItemCallback(
int id) {}
127bool opencpn_plugin::RenderOverlay(wxMemoryDC* dc,
PlugIn_ViewPort* vp) {
131void opencpn_plugin::SetCursorLatLon(
double lat,
double lon) {}
135void opencpn_plugin::SetDefaults(
void) {}
137void opencpn_plugin::ProcessParentResize(
int x,
int y) {}
139void opencpn_plugin::SetColorScheme(PI_ColorScheme cs) {}
141void opencpn_plugin::UpdateAuiStatus(
void) {}
143wxArrayString opencpn_plugin::GetDynamicChartClassNameArray() {
149opencpn_plugin_16::opencpn_plugin_16(
void* pmgr) :
opencpn_plugin(pmgr) {}
151opencpn_plugin_16::~opencpn_plugin_16(
void) {}
157void opencpn_plugin_16::SetPluginMessage(wxString& message_id,
158 wxString& message_body) {}
161opencpn_plugin_17::opencpn_plugin_17(
void* pmgr) :
opencpn_plugin(pmgr) {}
163opencpn_plugin_17::~opencpn_plugin_17(
void) {}
169bool opencpn_plugin_17::RenderGLOverlay(wxGLContext* pcontext,
174void opencpn_plugin_17::SetPluginMessage(wxString& message_id,
175 wxString& message_body) {}
178opencpn_plugin_18::opencpn_plugin_18(
void* pmgr) :
opencpn_plugin(pmgr) {}
180opencpn_plugin_18::~opencpn_plugin_18(
void) {}
186bool opencpn_plugin_18::RenderGLOverlay(wxGLContext* pcontext,
191void opencpn_plugin_18::SetPluginMessage(wxString& message_id,
192 wxString& message_body) {}
199opencpn_plugin_19::~opencpn_plugin_19(
void) {}
201void opencpn_plugin_19::OnSetupOptions(
void) {}
206opencpn_plugin_110::~opencpn_plugin_110(
void) {}
208void opencpn_plugin_110::LateInit(
void) {}
213opencpn_plugin_111::~opencpn_plugin_111(
void) {}
218opencpn_plugin_112::~opencpn_plugin_112(
void) {}
220bool opencpn_plugin_112::MouseEventHook(wxMouseEvent& event) {
return false; }
222void opencpn_plugin_112::SendVectorChartObjectInfo(
223 wxString& chart, wxString& feature, wxString& objname,
double lat,
224 double lon,
double scale,
int nativescale) {}
229opencpn_plugin_113::~opencpn_plugin_113(
void) {}
231bool opencpn_plugin_113::KeyboardEventHook(wxKeyEvent& event) {
return false; }
233void opencpn_plugin_113::OnToolbarToolDownCallback(
int id) {}
234void opencpn_plugin_113::OnToolbarToolUpCallback(
int id) {}
239opencpn_plugin_114::~opencpn_plugin_114(
void) {}
244opencpn_plugin_115::~opencpn_plugin_115(
void) {}
249opencpn_plugin_116::~opencpn_plugin_116(
void) {}
251bool opencpn_plugin_116::RenderGLOverlayMultiCanvas(wxGLContext* pcontext,
257bool opencpn_plugin_116::RenderOverlayMultiCanvas(wxDC& dc,
PlugIn_ViewPort* vp,
262void opencpn_plugin_116::PrepareContextMenu(
int canvasIndex) {
return; }
267int opencpn_plugin_117::GetPlugInVersionPatch() {
return 0; };
296void opencpn_plugin_119::PreShutdownHook() {
return; }
virtual const char * GetPlugInVersionPre()
Pre-release tag version part, see GetPlugInVersionPatch()
virtual const char * GetPlugInVersionBuild()
Build version part see GetPlugInVersionPatch().
virtual int GetPlugInVersionPost()
Post-release version part, extends the semver spec.
virtual bool RenderGLOverlayMultiCanvas(wxGLContext *pcontext, PlugIn_ViewPort *vp, int canvasIndex, int priority)
Render plugin overlay over chart canvas in OpenGL mode.
virtual bool RenderOverlayMultiCanvas(wxDC &dc, PlugIn_ViewPort *vp, int canvas_ix, int priority)
Render plugin overlay over chart canvas in non-OpenGL mode.
virtual wxBitmap * GetPlugInBitmap()
FIXME static wxBitmap* LoadSVG(const wxString filename, unsigned int width, ...
virtual void SetNMEASentence(wxString &sentence)
Receive all NMEA 0183 sentences from OpenCPN.
virtual void SetAISSentence(wxString &sentence)
Receive all AIS sentences from OpenCPN.
PlugIn Object Definition/API.