From a9bc708c7eeeada4c59952ce71aa071175f8f27d Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Fri, 17 Nov 2023 10:11:41 -0500 Subject: Added hybrid areas and settings dialog --- src/tracker_frame.cpp | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'src/tracker_frame.cpp') diff --git a/src/tracker_frame.cpp b/src/tracker_frame.cpp index a74e81e..5341fa6 100644 --- a/src/tracker_frame.cpp +++ b/src/tracker_frame.cpp @@ -9,11 +9,16 @@ #include "achievements_pane.h" #include "ap_state.h" #include "connection_dialog.h" +#include "settings_dialog.h" #include "tracker_config.h" #include "tracker_panel.h" #include "version.h" -enum TrackerFrameIds { ID_CONNECT = 1, ID_CHECK_FOR_UPDATES = 2 }; +enum TrackerFrameIds { + ID_CONNECT = 1, + ID_CHECK_FOR_UPDATES = 2, + ID_SETTINGS = 3 +}; wxDEFINE_EVENT(STATE_CHANGED, wxCommandEvent); wxDEFINE_EVENT(STATUS_CHANGED, wxCommandEvent); @@ -29,6 +34,7 @@ TrackerFrame::TrackerFrame() wxMenu *menuFile = new wxMenu(); menuFile->Append(ID_CONNECT, "&Connect"); + menuFile->Append(ID_SETTINGS, "&Settings"); menuFile->Append(wxID_EXIT); wxMenu *menuHelp = new wxMenu(); @@ -47,6 +53,7 @@ TrackerFrame::TrackerFrame() Bind(wxEVT_MENU, &TrackerFrame::OnAbout, this, wxID_ABOUT); Bind(wxEVT_MENU, &TrackerFrame::OnExit, this, wxID_EXIT); Bind(wxEVT_MENU, &TrackerFrame::OnConnect, this, ID_CONNECT); + Bind(wxEVT_MENU, &TrackerFrame::OnSettings, this, ID_SETTINGS); Bind(wxEVT_MENU, &TrackerFrame::OnCheckForUpdates, this, ID_CHECK_FOR_UPDATES); Bind(STATE_CHANGED, &TrackerFrame::OnStateChanged, this); @@ -119,6 +126,19 @@ void TrackerFrame::OnConnect(wxCommandEvent &event) { } } +void TrackerFrame::OnSettings(wxCommandEvent &event) { + SettingsDialog dlg; + + if (dlg.ShowModal() == wxID_OK) { + GetTrackerConfig().should_check_for_updates = + dlg.GetShouldCheckForUpdates(); + GetTrackerConfig().hybrid_areas = dlg.GetHybridAreas(); + GetTrackerConfig().Save(); + + UpdateIndicators(); + } +} + void TrackerFrame::OnCheckForUpdates(wxCommandEvent &event) { CheckForUpdates(/*manual=*/true); } -- cgit 1.4.1