@@ -40,26 +40,28 @@ END_EVENT_TABLE ()
4040
4141
4242CViewResources::CViewResources()
43+ : m_BOINCwasEmpty(false )
44+ , m_isDarkTheme(wxGetApp().GetIsDarkMode())
4345{}
4446
4547CViewResources::CViewResources (wxNotebook* pNotebook) :
4648 CBOINCBaseView(pNotebook)
49+ , m_BOINCwasEmpty(false )
50+ , m_isDarkTheme(wxGetApp().GetIsDarkMode())
4751{
48- bool isDarkMode = wxGetApp ().GetIsDarkMode ();
49- m_BOINCwasEmpty=false ;
50-
5152 wxGridSizer* itemGridSizer = new wxGridSizer (2 , 0 , 3 );
5253 wxASSERT (itemGridSizer);
5354
5455 // create pie chart ctrl for total disk usage
5556 m_pieCtrlTotal = new wxPieCtrl (this , ID_PIECTRL_RESOURCEUTILIZATIONVIEWTOTAL, wxDefaultPosition, wxDefaultSize);
5657 wxASSERT (m_pieCtrlTotal);
58+ m_pieCtrlTotal->ApplyTheme (m_isDarkTheme);
5759
5860 // setup the legend
5961 m_pieCtrlTotal->SetTransparent (true );
6062 m_pieCtrlTotal->SetHorLegendBorder (10 );
6163 m_pieCtrlTotal->SetLabelFont (*wxSWISS_FONT);
62- m_pieCtrlTotal->SetLabelColour (isDarkMode ? *wxWHITE : *wxBLACK);
64+ m_pieCtrlTotal->SetLabelColour (m_isDarkTheme ? *wxWHITE : *wxBLACK);
6365 m_pieCtrlTotal->SetLabel (_ (" Total disk usage" ));
6466
6567 // initialize pie control
@@ -75,12 +77,13 @@ CViewResources::CViewResources(wxNotebook* pNotebook) :
7577 // create pie chart ctrl for BOINC disk usage
7678 m_pieCtrlBOINC = new wxPieCtrl (this , ID_PIECTRL_RESOURCEUTILIZATIONVIEW, wxDefaultPosition, wxDefaultSize);
7779 wxASSERT (m_pieCtrlBOINC);
80+ m_pieCtrlBOINC->ApplyTheme (m_isDarkTheme);
7881
7982 // setup the legend
8083 m_pieCtrlBOINC->SetTransparent (true );
8184 m_pieCtrlBOINC->SetHorLegendBorder (10 );
8285 m_pieCtrlBOINC->SetLabelFont (*wxSWISS_FONT);
83- m_pieCtrlTotal ->SetLabelColour (isDarkMode ? *wxWHITE : *wxBLACK);
86+ m_pieCtrlBOINC ->SetLabelColour (m_isDarkTheme ? *wxWHITE : *wxBLACK);
8487 m_pieCtrlBOINC->SetLabel (_ (" Disk usage by BOINC projects" ));
8588
8689 // initialize pie control
@@ -173,7 +176,6 @@ void CViewResources::OnListRender() {
173176 wxString diskspace;
174177 static double project_total=0.0 ;
175178 unsigned int i;
176- bool isDarkMode = wxGetApp ().GetIsDarkMode ();
177179
178180 wxASSERT (pDoc);
179181 wxASSERT (wxDynamicCast (pDoc, CMainDocument));
@@ -228,7 +230,7 @@ void CViewResources::OnListRender() {
228230 wxPiePart part;
229231 part.SetLabel (_ (" no projects: 0 bytes used" ));
230232 part.SetValue (1 );
231- part.SetColour (isDarkMode ? wxColour (255 , 255 , 255 ) : wxColour (0 ,0 ,0 ));
233+ part.SetColour (m_isDarkTheme ? wxColour (255 , 255 , 255 ) : wxColour (0 ,0 ,0 ));
232234 m_pieCtrlBOINC->m_Series .Add (part);
233235 m_pieCtrlBOINC->Refresh ();
234236 m_BOINCwasEmpty=true ;
@@ -263,8 +265,7 @@ void CViewResources::OnListRender() {
263265 FormatDiskSpace (boinc_total, diskspace);
264266 part.SetLabel (_ (" used by BOINC: " ) + diskspace);
265267 part.SetValue (boinc_total);
266- part.SetColour (isDarkMode ? wxColour (255 , 255 , 255 ) : wxColour (0 ,0 ,0 ));
267- part.SetColour (isDarkMode ? *wxWHITE : *wxBLACK);
268+ part.SetColour (m_isDarkTheme ? *wxWHITE : *wxBLACK);
268269 m_pieCtrlTotal->m_Series .Add (part);
269270
270271 if (pDoc->disk_usage .d_allowed > 0 ) {
@@ -274,15 +275,15 @@ void CViewResources::OnListRender() {
274275 FormatDiskSpace (avail, diskspace);
275276 part.SetLabel (_ (" free, available to BOINC: " ) + diskspace);
276277 part.SetValue (avail == 0 ? 1 : avail);
277- part.SetColour (isDarkMode ? wxColour (108 , 108 , 108 ) : wxColour (128 , 128 , 128 ));
278+ part.SetColour (m_isDarkTheme ? wxColour (108 , 108 , 108 ) : wxColour (128 , 128 , 128 ));
278279 m_pieCtrlTotal->m_Series .Add (part);
279280
280281 double not_avail = free - avail;
281282 if (not_avail > 0 ) {
282283 FormatDiskSpace (not_avail, diskspace);
283284 part.SetLabel (_ (" free, not available to BOINC: " ) + diskspace);
284285 part.SetValue (not_avail);
285- part.SetColour (isDarkMode ? wxColour (172 ,172 ,172 ) : wxColour (238 ,238 ,238 ));
286+ part.SetColour (m_isDarkTheme ? wxColour (172 ,172 ,172 ) : wxColour (238 ,238 ,238 ));
286287 m_pieCtrlTotal->m_Series .Add (part);
287288 }
288289 } else {
@@ -292,7 +293,7 @@ void CViewResources::OnListRender() {
292293 FormatDiskSpace (free, diskspace);
293294 part.SetLabel (_ (" free: " ) + diskspace);
294295 part.SetValue (free);
295- part.SetColour (isDarkMode ? wxColour (172 ,172 ,172 ) : wxColour (238 ,238 ,238 ));
296+ part.SetColour (m_isDarkTheme ? wxColour (172 ,172 ,172 ) : wxColour (238 ,238 ,238 ));
296297 m_pieCtrlTotal->m_Series .Add (part);
297298 }
298299
@@ -301,7 +302,7 @@ void CViewResources::OnListRender() {
301302 FormatDiskSpace (used_by_others, diskspace);
302303 part.SetLabel (_ (" used by other programs: " ) + diskspace);
303304 part.SetValue (used_by_others);
304- part.SetColour (isDarkMode ? wxColour (140 ,140 ,140 ) : wxColour (192 ,192 ,192 ));
305+ part.SetColour (m_isDarkTheme ? wxColour (140 ,140 ,140 ) : wxColour (192 ,192 ,192 ));
305306 m_pieCtrlTotal->m_Series .Add (part);
306307 m_pieCtrlTotal->Refresh ();
307308 }
0 commit comments