forked from mia/Aegisub
config.dat can optionally be stored on the same folder as aegisub.exe.
Originally committed to SVN as r1280.
This commit is contained in:
parent
1db207ea29
commit
24d941b2bc
4 changed files with 22 additions and 15 deletions
|
@ -119,6 +119,8 @@ Please visit http://aegisub.net to download latest version
|
||||||
o Fixed behavior of the Escape key in it. (AMZ)
|
o Fixed behavior of the Escape key in it. (AMZ)
|
||||||
o Redesigned the interface and replaced the log window with a much better Scintilla control. (AMZ)
|
o Redesigned the interface and replaced the log window with a much better Scintilla control. (AMZ)
|
||||||
o You can now collect multiple times without reopening the dialog. (AMZ)
|
o You can now collect multiple times without reopening the dialog. (AMZ)
|
||||||
|
- All user-specific files (configuration, style storages, etc) are now stored on Application Data\Aegisub in Windows. (AMZ)
|
||||||
|
- config.dat can optionally be stored on the same folder as aegisub.exe. (AMZ)
|
||||||
- Added a much-needed options dialog with all the relevant config.dat options in it. (AMZ)
|
- Added a much-needed options dialog with all the relevant config.dat options in it. (AMZ)
|
||||||
- Various fixes to better handle paths/file names with non-ANSI characters on Windows (jfs/AMZ)
|
- Various fixes to better handle paths/file names with non-ANSI characters on Windows (jfs/AMZ)
|
||||||
- Misc. fixes for building on Linux (Azzy, equinox, jfs)
|
- Misc. fixes for building on Linux (Azzy, equinox, jfs)
|
||||||
|
|
|
@ -45,6 +45,7 @@
|
||||||
#include "options.h"
|
#include "options.h"
|
||||||
#include <wx/spinctrl.h>
|
#include <wx/spinctrl.h>
|
||||||
#include <wx/stdpaths.h>
|
#include <wx/stdpaths.h>
|
||||||
|
#include <wx/filefn.h>
|
||||||
#include "frame_main.h"
|
#include "frame_main.h"
|
||||||
#include "standard_paths.h"
|
#include "standard_paths.h"
|
||||||
#include "validators.h"
|
#include "validators.h"
|
||||||
|
@ -97,15 +98,12 @@ DialogOptions::DialogOptions(wxWindow *parent)
|
||||||
wxSizer *genMainSizer = new wxBoxSizer(wxVERTICAL);
|
wxSizer *genMainSizer = new wxBoxSizer(wxVERTICAL);
|
||||||
wxSizer *genSizer1 = new wxStaticBoxSizer(wxHORIZONTAL,generalPage,_("Startup"));
|
wxSizer *genSizer1 = new wxStaticBoxSizer(wxHORIZONTAL,generalPage,_("Startup"));
|
||||||
wxSizer *genSizer4 = new wxFlexGridSizer(2,2,5,5);
|
wxSizer *genSizer4 = new wxFlexGridSizer(2,2,5,5);
|
||||||
wxCheckBox *box = new wxCheckBox(generalPage,-1,_("Show Splash Screen"));
|
|
||||||
Bind(box,_T("Show splash"));
|
AddCheckBox(generalPage,genSizer4,_("Show Splash Screen"),_T("Show splash"));
|
||||||
genSizer4->Add(box,1,wxALL,0);
|
AddCheckBox(generalPage,genSizer4,_("Show Tip of the Day"),_T("Tips enabled"));
|
||||||
box = new wxCheckBox(generalPage,-1,_("Show Tip of the Day"));
|
AddCheckBox(generalPage,genSizer4,_("Auto Check for Updates"),_T("Auto check for updates"));
|
||||||
Bind(box,_T("Tips enabled"));
|
AddCheckBox(generalPage,genSizer4,_("Save config.dat locally"),_T("Local config"));
|
||||||
genSizer4->Add(box,1,wxALL,0);
|
|
||||||
box = new wxCheckBox(generalPage,-1,_("Auto Check for Updates"));
|
|
||||||
Bind(box,_T("Auto check for updates"));
|
|
||||||
genSizer4->Add(box,1,wxALL,0);
|
|
||||||
genSizer1->Add(genSizer4,1,wxEXPAND|wxALL,5);
|
genSizer1->Add(genSizer4,1,wxEXPAND|wxALL,5);
|
||||||
wxSizer *genSizer2 = new wxStaticBoxSizer(wxVERTICAL,generalPage,_("Limits for levels and recent files"));
|
wxSizer *genSizer2 = new wxStaticBoxSizer(wxVERTICAL,generalPage,_("Limits for levels and recent files"));
|
||||||
wxFlexGridSizer *genSizer3 = new wxFlexGridSizer(8,2,5,5);
|
wxFlexGridSizer *genSizer3 = new wxFlexGridSizer(8,2,5,5);
|
||||||
|
@ -869,6 +867,11 @@ void DialogOptions::WriteToOptions(bool justApply) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Save options
|
// Save options
|
||||||
|
if (Options.AsBool(_T("Local config"))) Options.SetFile(StandardPaths::DecodePath(_T("?data/config.dat")));
|
||||||
|
else {
|
||||||
|
Options.SetFile(StandardPaths::DecodePath(_T("?user/config.dat")));
|
||||||
|
wxRemoveFile(StandardPaths::DecodePath(_T("?data/config.dat")));
|
||||||
|
}
|
||||||
Options.Save();
|
Options.Save();
|
||||||
|
|
||||||
// Need restart?
|
// Need restart?
|
||||||
|
|
|
@ -87,8 +87,13 @@ bool AegisubApp::OnInit() {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Set config file
|
// Set config file
|
||||||
Options.SetFile(StandardPaths::DecodePath(_T("?user/config.dat")));
|
Options.SetFile(StandardPaths::DecodePath(_T("?data/config.dat")));
|
||||||
Options.Load();
|
Options.Load();
|
||||||
|
if (!Options.AsBool(_T("Local config"))) {
|
||||||
|
Options.SetFile(StandardPaths::DecodePath(_T("?user/config.dat")));
|
||||||
|
Options.Load();
|
||||||
|
}
|
||||||
|
Options.Save();
|
||||||
AssTime::UseMSPrecision = Options.AsBool(_T("Use nonstandard Milisecond Times"));
|
AssTime::UseMSPrecision = Options.AsBool(_T("Use nonstandard Milisecond Times"));
|
||||||
|
|
||||||
// Set hotkeys file
|
// Set hotkeys file
|
||||||
|
|
|
@ -80,6 +80,7 @@ void OptionsManager::LoadDefaults(bool onlyDefaults) {
|
||||||
SetModificationType(MOD_AUTOMATIC);
|
SetModificationType(MOD_AUTOMATIC);
|
||||||
SetBool(_T("Tips enabled"),true);
|
SetBool(_T("Tips enabled"),true);
|
||||||
SetBool(_T("Show splash"),true);
|
SetBool(_T("Show splash"),true);
|
||||||
|
SetBool(_T("Local config"),false);
|
||||||
SetInt(_T("Undo levels"),8);
|
SetInt(_T("Undo levels"),8);
|
||||||
SetInt(_T("Recent timecodes max"),16);
|
SetInt(_T("Recent timecodes max"),16);
|
||||||
SetInt(_T("Recent keyframes max"),16);
|
SetInt(_T("Recent keyframes max"),16);
|
||||||
|
@ -394,11 +395,10 @@ void OptionsManager::Load() {
|
||||||
// Load defaults
|
// Load defaults
|
||||||
LoadDefaults();
|
LoadDefaults();
|
||||||
|
|
||||||
// Check if file exists (create if it doesn't)
|
// Check if file exists
|
||||||
wxFileName path(filename);
|
wxFileName path(filename);
|
||||||
if (!path.FileExists()) {
|
if (!path.FileExists()) {
|
||||||
modified = true;
|
modified = true;
|
||||||
Save();
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -426,9 +426,6 @@ void OptionsManager::Load() {
|
||||||
}
|
}
|
||||||
else SetText(key,value);
|
else SetText(key,value);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Close
|
|
||||||
Save();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue