136 wxCheckBox* m_cbProjectPosition;
137 wxStaticText* m_stCourse;
138 wxTextCtrl* m_tCourse;
139 wxStaticText* m_stSpeed;
140 wxTextCtrl* m_tSpeed;
141 wxStaticText* m_stSpeedUnit;
145 const wxPoint& pos = wxDefaultPosition,
146 const wxSize& size = wxSize(580, 40),
147 long style = wxTAB_TRAVERSAL,
148 const wxString& name = wxEmptyString);
154 bool ProjectionEnabled();
155 void SetCourse(
const double course) {
156 m_tCourse->SetValue(!wxIsNaN(course) ? wxString::FromDouble(course)
159 void SetSpeed(
const double speed) {
160 m_tSpeed->SetValue(!wxIsNaN(speed) ? wxString::FromDouble(speed) :
"6.0");
162 void EnableProjection(
bool enabled) {
163 m_cbProjectPosition->SetValue(enabled);
173 wxFlexGridSizer* m_fgCtrlBarSizer;
174 wxBitmapButton* m_bpPrev;
175 wxChoice* m_cRecordForecast;
176 wxBitmapButton* m_bpNext;
177 wxBitmapButton* m_bpNow;
178 wxBitmapButton* m_bpZoomToCenter;
179 wxBitmapButton* m_bpShowCursorData;
180 wxBitmapButton* m_bpPlay;
181 wxBitmapButton* m_bpOpenFile;
182 wxBitmapButton* m_bpSettings;
183 wxBitmapButton* m_bpRequest;
184 wxFlexGridSizer* m_fgCDataSizer;
185 wxFlexGridSizer* m_fgCtrlGrabberSize;
187 double m_ScaledFactor;
190 virtual void OnClose(wxCloseEvent& event) {
event.Skip(); }
191 virtual void OnMouseEvent(wxMouseEvent& event) {
event.Skip(); }
192 virtual void OnPaint(wxPaintEvent& event) {
event.Skip(); }
193 virtual void OnSize(wxSizeEvent& event) {
event.Skip(); }
194 virtual void OnPrev(wxCommandEvent& event) {
event.Skip(); }
195 virtual void OnRecordForecast(wxCommandEvent& event) {
event.Skip(); }
196 virtual void OnNext(wxCommandEvent& event) {
event.Skip(); }
197 virtual void OnAltitude(wxCommandEvent& event) {
event.Skip(); }
198 virtual void OnNow(wxCommandEvent& event) {
event.Skip(); }
199 virtual void OnZoomToCenterClick(wxCommandEvent& event) {
event.Skip(); }
200 virtual void OnShowCursorData(wxCommandEvent& event) {
event.Skip(); }
201 virtual void OnPlayStop(wxCommandEvent& event) {
event.Skip(); }
202 virtual void OnTimeline(wxScrollEvent& event) {
event.Skip(); }
203 virtual void OnOpenFile(wxCommandEvent& event) {
event.Skip(); }
204 virtual void OnSettings(wxCommandEvent& event) {
event.Skip(); }
205 virtual void OnRequestForecastData(wxCommandEvent& event) {
event.Skip(); }
206 virtual void OnCompositeDialog(wxCommandEvent& event) {
event.Skip(); }
209 wxBitmapButton* m_bpAltitude;
210 wxSlider* m_sTimeline;
213 const wxString& title = wxEmptyString,
214 const wxPoint& pos = wxDefaultPosition,
215 const wxSize& size = wxDefaultSize,
216 long style = wxDEFAULT_DIALOG_STYLE | wxSYSTEM_MENU,
217 double scale_factor = 1.0);
220 void SetScaleFactor(
double factor) { m_ScaledFactor = factor; }
221 double GetScaleFactor()
const {
return m_ScaledFactor; }
222 static wxBitmap GetScaledBitmap(wxBitmap bitmap,
const wxString& svgFileName,
223 double scale_factor);
249 wxFlexGridSizer* fgSizer30;
250 wxStaticText* m_stTrackingText;
251 wxFlexGridSizer* m_fgTrackingControls;
252 wxTextCtrl* m_tcWindSpeed;
253 wxTextCtrl* m_tcWindSpeedBf;
254 wxTextCtrl* m_tcWindDirection;
255 wxTextCtrl* m_tcWindGust;
256 wxTextCtrl* m_tcPressure;
257 wxTextCtrl* m_tcWaveHeight;
258 wxTextCtrl* m_tcWavePeriode;
259 wxTextCtrl* m_tcWaveDirection;
260 wxTextCtrl* m_tcCurrentVelocity;
261 wxTextCtrl* m_tcCurrentDirection;
262 wxTextCtrl* m_tcPrecipitation;
263 wxTextCtrl* m_tcCloud;
264 wxTextCtrl* m_tcAirTemperature;
265 wxTextCtrl* m_tcSeaTemperature;
266 wxTextCtrl* m_tcCAPE;
267 wxTextCtrl* m_tcReflC;
268 wxCheckBox* m_cbAltitude;
269 wxTextCtrl* m_tcAltitude;
270 wxCheckBox* m_cbTemp;
271 wxTextCtrl* m_tcTemp;
272 wxCheckBox* m_cbRelHumid;
273 wxTextCtrl* m_tcRelHumid;
276 virtual void OnMouseEvent(wxMouseEvent& event) {
event.Skip(); }
277 virtual void OnCBAny(wxCommandEvent& event) {
event.Skip(); }
278 virtual void OnMenuCallBack(wxMouseEvent& event) {
event.Skip(); }
281 wxCheckBox* m_cbWind;
282 wxCheckBox* m_cbWindGust;
283 wxCheckBox* m_cbPressure;
284 wxCheckBox* m_cbWave;
285 wxCheckBox* m_cbCurrent;
286 wxCheckBox* m_cbPrecipitation;
287 wxCheckBox* m_cbCloud;
288 wxCheckBox* m_cbAirTemperature;
289 wxCheckBox* m_cbSeaTemperature;
290 wxCheckBox* m_cbCAPE;
291 wxCheckBox* m_cbReflC;
294 const wxPoint& pos = wxDefaultPosition,
295 const wxSize& size = wxSize(-1, -1),
296 long style = wxNO_BORDER | wxTAB_TRAVERSAL);
306 wxFlexGridSizer* m_fgSetDataSizer;
307 wxChoice* m_cDataType;
308 wxChoice* m_cDataUnits;
309 wxCheckBox* m_cbBarbedArrows;
310 wxFlexGridSizer* m_fgBarbedData1;
311 wxChoice* m_cBarbedColours;
320 wxCheckBox* m_cBarbArrMinSpac;
321 wxFlexGridSizer* m_fgBarbedData2;
322 wxCheckBox* m_cBarbedVisibility;
336 wxCheckBox* m_cbIsoBars;
337 wxFlexGridSizer* m_fIsoBarSpacing;
338 wxStaticText* m_tIsoBarSpacing;
339 wxSpinCtrl* m_sIsoBarSpacing;
340 wxFlexGridSizer* m_fIsoBarVisibility;
341 wxCheckBox* m_sIsoBarVisibility;
342 wxCheckBox* m_cbAbbrIsoBarsNumbers;
343 wxCheckBox* m_cbDirectionArrows;
344 wxFlexGridSizer* m_fgDirArrData1;
345 wxChoice* m_cDirectionArrowForm;
346 wxCheckBox* m_cDirArrFixSpac;
347 wxCheckBox* m_cDirArrMinSpac;
348 wxFlexGridSizer* m_fgDirArrData2;
349 wxChoice* m_cDirectionArrowSize;
350 wxSpinCtrl* m_sDirArrSpacing;
351 wxCheckBox* m_cbOverlayMap;
352 wxStaticText* m_tOverlayColors;
353 wxChoice* m_cOverlayColors;
354 wxCheckBox* m_cbNumbers;
355 wxFlexGridSizer* m_fgNumData1;
356 wxCheckBox* m_cNumFixSpac;
357 wxCheckBox* m_cNumMinSpac;
358 wxSpinCtrl* m_sNumbersSpacing;
359 wxCheckBox* m_cbParticles;
360 wxStaticText* m_ctParticles;
361 wxSlider* m_sParticleDensity;
362 wxStaticText* m_staticText24;
363 wxSlider* m_sTransparency;
364 wxFlexGridSizer* m_fgSetPlaybackSizer;
365 wxStaticText* m_staticText26;
366 wxChoice* m_cLoopStartPoint;
367 wxSlider* m_sUpdatesPerSecond;
368 wxStaticText* m_tSlicesPerUpdate;
369 wxFlexGridSizer* m_fgSetGuiSizer;
370 wxRadioButton* m_rbCurDataAttaWCap;
371 wxRadioButton* m_rbCurDataAttaWoCap;
372 wxRadioButton* m_rbCurDataIsolHoriz;
373 wxRadioButton* m_rbCurDataIsolVertic;
374 wxStaticBitmap* m_biAltitude;
375 wxStaticBitmap* m_biNow;
376 wxStaticBitmap* m_biZoomToCenter;
377 wxStaticBitmap* m_biShowCursorData;
378 wxStaticBitmap* m_biPlay;
379 wxStaticBitmap* m_biTimeSlider;
380 wxStaticBitmap* m_biOpenFile;
381 wxStaticBitmap* m_biSettings;
382 wxStaticBitmap* m_biRequest;
385 virtual void OnPageChange(wxNotebookEvent& event) {
event.Skip(); }
386 virtual void OnDataTypeChoice(wxCommandEvent& event) {
event.Skip(); }
387 virtual void OnUnitChange(wxCommandEvent& event) {
event.Skip(); }
388 virtual void OnSpacingModeChange(wxCommandEvent& event) {
event.Skip(); }
389 virtual void OnTransparencyChange(wxScrollEvent& event) {
event.Skip(); }
390 virtual void OnIntepolateChange(wxCommandEvent& event) {
event.Skip(); }
391 virtual void OnCtrlandDataStyleChanged(wxCommandEvent& event) {
394 virtual void OnApply(wxCommandEvent& event) {
event.Skip(); }
397 wxNotebook* m_nSettingsBook;
398 wxCheckBox* m_cLoopMode;
399 wxCheckBox* m_cInterpolate;
400 wxChoice* m_sSlicesPerUpdate;
401 wxStdDialogButtonSizer* m_sButton;
402 wxButton* m_sButtonOK;
403 wxButton* m_sButtonApply;
404 wxButton* m_sButtonCancel;
407 const wxString& title = _(
"Settings"),
408 const wxPoint& pos = wxDefaultPosition,
409 const wxSize& size = wxSize(-1, -1),
410 long style = wxDEFAULT_DIALOG_STYLE);
421 virtual void OnStartOptionChange(wxCommandEvent& event) {
event.Skip(); }
422 virtual void OnOKClick(wxCommandEvent& event) {
event.Skip(); }
423 void OnDirSelClick(wxCommandEvent& event);
426 wxCheckBox* m_cbUseHiDef;
427 wxCheckBox* m_cbUseGradualColors;
428 wxCheckBox* m_cbCopyFirstCumulativeRecord;
429 wxCheckBox* m_cbCopyMissingWaveRecord;
430 wxCheckBox* m_cbDrawBarbedArrowHead;
431 wxCheckBox* m_cZoomToCenterAtInit;
432 wxRadioBox* m_rbLoadOptions;
433 wxRadioBox* m_rbStartOptions;
434 wxString m_grib_dir_sel;
435 wxTextCtrl* m_textDirectory;
438 wxSlider* m_sIconSizeFactor;
442 const wxString& title = _(
"Preferences"),
443 const wxPoint& pos = wxDefaultPosition,
444 const wxSize& size = wxDefaultSize,
445 long style = wxDEFAULT_DIALOG_STYLE);
454 wxStaticBoxSizer* createAreaSelectionSection(wxWindow* parent,
456 void createWorldPanel();
457 void createLocalModelsPanel();
458 void createEmailPanel();
461 wxNotebook* m_notebookGetGrib;
462 wxPanel* m_panelWorld;
463 wxHtmlWindow* m_htmlWinWorld;
464 wxStaticText* m_staticTextInfo;
465 wxStaticText* m_stForecastLength;
466 wxChoice* m_chForecastLength;
467 wxStaticText* m_stECMWFResolution;
468 wxChoice* m_chECMWFResolution;
469 wxButton* m_btnDownloadWorld;
470 wxPanel* m_panelLocalModels;
471 wxTreeCtrl* m_SourcesTreeCtrl1;
472 wxStaticText* m_stLocalDownloadInfo;
473 wxHtmlWindow* m_htmlInfoWin;
474 wxButton* m_buttonUpdateCatalog;
475 wxButton* m_btnDownloadLocal;
476 wxPanel* m_panelEmail;
477 wxFlexGridSizer* m_fgScrollSizer;
478 wxFlexGridSizer* m_pSenderSizer;
479 wxTextCtrl* m_pSenderAddress;
482 wxCheckBox* m_cMovingGribEnabled;
483 wxFlexGridSizer* m_fgMovingParams;
484 wxSpinCtrl* m_sMovingSpeed;
485 wxSpinCtrl* m_sMovingCourse;
486 wxStaticText* m_sCourseUnit;
487 wxFlexGridSizer* m_fgLog;
488 wxTextCtrl* m_pLogin;
490 wxChoice* m_pResolution;
491 wxStaticText* m_tResUnit;
492 wxChoice* m_pInterval;
493 wxChoice* m_pTimeRange;
494 wxStaticText* m_staticText21;
506 wxBitmapToggleButton* m_bpManualSelection;
507 wxFlexGridSizer* fgZoneCoordinatesSizer;
508 wxCheckBox* m_cUseSavedZone;
511 wxStaticText* m_stMaxLatNS;
512 wxStaticText* m_staticText36;
515 wxStaticText* m_stMaxLonEW;
518 wxStaticText* m_stMinLatNS;
521 wxStaticText* m_stMinLonEW;
523 wxCheckBox* m_pPress;
524 wxCheckBox* m_pWindGust;
525 wxCheckBox* m_pRainfall;
526 wxCheckBox* m_pCloudCover;
527 wxCheckBox* m_pAirTemp;
529 wxCheckBox* m_pReflectivity;
530 wxCheckBox* m_pSeaTemp;
531 wxCheckBox* m_pCurrent;
532 wxCheckBox* m_pWaves;
534 wxCheckBox* m_pAltitudeData;
535 wxFlexGridSizer* m_fgAltitudeData;
536 wxCheckBox* m_p850hpa;
537 wxCheckBox* m_p700hpa;
538 wxCheckBox* m_p500hpa;
539 wxCheckBox* m_p300hpa;
540 wxTextCtrl* m_MailImage;
541 wxFlexGridSizer* m_fgFixedSizer;
542 wxStaticText* m_tFileSize;
543 wxStaticText* m_tLimit;
554 virtual void OnClose(wxCloseEvent& event) {
event.Skip(); }
555 virtual void OnNotebookPageChanged(wxNotebookEvent& event) {
event.Skip(); }
556 virtual void OnWorldLengthChoice(wxCommandEvent& event) {
event.Skip(); }
557 virtual void OnWorldResolutionChoice(wxCommandEvent& event) {
event.Skip(); }
558 virtual void OnWorldDownload(wxCommandEvent& event) {
event.Skip(); }
559 virtual void OnLocalTreeItemExpanded(wxTreeEvent& event) {
event.Skip(); }
560 virtual void OnLocalTreeSelChanged(wxTreeEvent& event) {
event.Skip(); }
561 virtual void OnUpdateLocalCatalog(wxCommandEvent& event) {
event.Skip(); }
562 virtual void OnDownloadLocal(wxCommandEvent& event) {
event.Skip(); }
563 virtual void OnTopChange(wxCommandEvent& event) {
event.Skip(); }
564 virtual void OnMovingClick(wxCommandEvent& event) {
event.Skip(); }
565 virtual void OnAnySpinChange(wxSpinEvent& event) {
event.Skip(); }
566 virtual void OnAnyChange(wxCommandEvent& event) {
event.Skip(); }
567 virtual void OnTimeRangeChange(wxCommandEvent& event) {
event.Skip(); }
568 virtual void OnZoneSelectionModeChange(wxCommandEvent& event) {
571 virtual void OnCoordinatesChange(wxSpinEvent& event) {
event.Skip(); }
576 virtual void OnOK(wxCommandEvent& event) {
event.Skip(); }
581 virtual void OnCancel(wxCommandEvent& event) {
event.Skip(); }
586 virtual void OnSendMaiL(wxCommandEvent& event) {
event.Skip(); }
587 virtual void OnXyGribDownloadButton(wxCommandEvent& event) {
event.Skip(); }
588 virtual void OnXyGribAtmModelChoice(wxCommandEvent& event) {
event.Skip(); }
589 virtual void OnXyGribWaveModelChoice(wxCommandEvent& event) {
event.Skip(); }
590 virtual void OnXyGribConfigChange(wxCommandEvent& event) {
event.Skip(); }
592 virtual void SaveConfig() {};
595 wxScrolledWindow* m_sScrolledDialog;
598 const wxString& title = _(
"Get forecast..."),
599 const wxPoint& pos = wxDefaultPosition,
600 const wxSize& size = wxSize(-1, -1),
601 long style = wxDEFAULT_DIALOG_STYLE);
611 wxStaticText* m_pPositionText;
612 wxStaticText* m_pCursorPosition;
615 virtual void OnClose(wxCloseEvent& event) {
event.Skip(); }
616 virtual void OnClick(wxGridEvent& event) {
event.Skip(); }
617 virtual void OnRangeClick(wxGridRangeSelectEvent& event) {
event.Skip(); }
618 virtual void OnOKButton(wxCommandEvent& event) {
event.Skip(); }
622 wxButton* m_pButtonTableOK;
626 const wxString& title = _(
"Grib Data Table"),
627 const wxPoint& pos = wxDefaultPosition,
628 const wxSize& size = wxSize(-1, -1),
629 long style = wxDEFAULT_DIALOG_STYLE | wxMAXIMIZE_BOX |