summaryrefslogtreecommitdiffstats
path: root/Project/GeneralPropertiesForm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Project/GeneralPropertiesForm.cpp')
-rw-r--r--Project/GeneralPropertiesForm.cpp111
1 files changed, 65 insertions, 46 deletions
diff --git a/Project/GeneralPropertiesForm.cpp b/Project/GeneralPropertiesForm.cpp
index c6ef565..3cce748 100644
--- a/Project/GeneralPropertiesForm.cpp
+++ b/Project/GeneralPropertiesForm.cpp
@@ -31,32 +31,37 @@ GeneralPropertiesForm::GeneralPropertiesForm(wxWindow* parent, PropertiesData* p
m_choiceTheme->Clear();
m_choiceTheme->Insert(_("Light"), 0);
m_choiceTheme->Insert(_("Dark"), 1);
+ m_choiceRender->Clear();
+ m_choiceRender->Insert(_("OpenGL"), 0);
+ m_choiceRender->Insert(_("Device Context"), 1);
- switch(data.language) {
- case wxLANGUAGE_ENGLISH: {
- m_choiceLanguage->SetSelection(0);
- } break;
- case wxLANGUAGE_PORTUGUESE_BRAZILIAN: {
- m_choiceLanguage->SetSelection(1);
- } break;
- default: {
- m_choiceLanguage->SetSelection(wxNOT_FOUND);
- } break;
+ switch (data.language) {
+ case wxLANGUAGE_ENGLISH: {
+ m_choiceLanguage->SetSelection(0);
+ } break;
+ case wxLANGUAGE_PORTUGUESE_BRAZILIAN: {
+ m_choiceLanguage->SetSelection(1);
+ } break;
+ default: {
+ m_choiceLanguage->SetSelection(wxNOT_FOUND);
+ } break;
}
- switch(data.theme) {
- case THEME_LIGHT: {
- m_choiceTheme->SetSelection(0);
- } break;
- case THEME_DARK: {
- m_choiceTheme->SetSelection(1);
- } break;
+ switch (data.theme) {
+ case THEME_LIGHT: {
+ m_choiceTheme->SetSelection(0);
+ } break;
+ case THEME_DARK: {
+ m_choiceTheme->SetSelection(1);
+ } break;
}
+ if (data.useOpenGL) m_choiceRender->SetSelection(0);
+ else m_choiceRender->SetSelection(1);
}
GeneralPropertiesForm::~GeneralPropertiesForm() {}
void GeneralPropertiesForm::OnButtonOKClick(wxCommandEvent& event)
{
- if(ValidateData()) EndModal(wxID_OK);
+ if (ValidateData()) EndModal(wxID_OK);
}
bool GeneralPropertiesForm::ValidateData()
@@ -66,53 +71,67 @@ bool GeneralPropertiesForm::ValidateData()
bool hasChanges = false;
//wxTextFile file("config.ini");
- wxFileName fn(wxStandardPaths::Get().GetExecutablePath());
- wxTextFile file(fn.GetPath() + wxFileName::GetPathSeparator() + "config.ini");
- if(!file.Create()) {
- if(!file.Open()) {
+ wxFileName fn(wxStandardPaths::Get().GetExecutablePath());
+ wxTextFile file(fn.GetPath() + wxFileName::GetPathSeparator() + "config.ini");
+ if (!file.Create()) {
+ if (!file.Open()) {
// Fail to access the file.
wxMessageDialog msgDialog(this,
- _("It was not possible to access the init file.\nThe settings won't be applied."),
- _("Error"), wxOK | wxCENTRE | wxICON_ERROR);
+ _("It was not possible to access the init file.\nThe settings won't be applied."),
+ _("Error"), wxOK | wxCENTRE | wxICON_ERROR);
msgDialog.ShowModal();
}
file.Clear();
}
wxString line = "lang=";
- switch(m_choiceLanguage->GetSelection()) {
- case 0: {
- line += "en";
- data.language = wxLANGUAGE_ENGLISH;
- } break;
- case 1: {
- line += "pt-br";
- data.language = wxLANGUAGE_PORTUGUESE_BRAZILIAN;
- } break;
+ switch (m_choiceLanguage->GetSelection()) {
+ case 0: {
+ line += "en";
+ data.language = wxLANGUAGE_ENGLISH;
+ } break;
+ case 1: {
+ line += "pt-br";
+ data.language = wxLANGUAGE_PORTUGUESE_BRAZILIAN;
+ } break;
}
file.AddLine(line);
- if(data.language != checkData.language) hasChanges = true;
+ if (data.language != checkData.language) hasChanges = true;
line = "theme=";
- switch(m_choiceTheme->GetSelection()) {
- case 0: {
- line += "light";
- data.theme = THEME_LIGHT;
- } break;
- case 1: {
- line += "dark";
- data.theme = THEME_DARK;
- } break;
+ switch (m_choiceTheme->GetSelection()) {
+ case 0: {
+ line += "light";
+ data.theme = THEME_LIGHT;
+ } break;
+ case 1: {
+ line += "dark";
+ data.theme = THEME_DARK;
+ } break;
}
file.AddLine(line);
- if(data.theme != checkData.theme) hasChanges = true;
+ if (data.theme != checkData.theme) hasChanges = true;
+
+ line = "useOpenGL=";
+ switch (m_choiceRender->GetSelection()) {
+ case 0: {
+ line += "yes";
+ data.useOpenGL = true;
+ } break;
+ case 1: {
+ line += "no";
+ data.useOpenGL = false;
+ } break;
+ }
+ file.AddLine(line);
+ if (data.useOpenGL != checkData.useOpenGL) hasChanges = true;
file.Write();
file.Close();
- if(hasChanges) {
+ if (hasChanges) {
wxMessageDialog msgDialog(this, _("The application must be restarted to settings changes be applied."),
- _("Info"), wxOK | wxCENTRE | wxICON_INFORMATION);
+ _("Info"), wxOK | wxCENTRE | wxICON_INFORMATION);
msgDialog.ShowModal();
}
m_properties->SetGeneralPropertiesData(data);