Use boost::filesystem::path for all paths, and std::string for all other
strings, converting to/from wxString as close to the actual uses of wx
as possible.
Where possible, replace the uses of non-UI wxWidgets functionality with
the additions to the standard library in C++11, or the equivalents in
boost.
Move the path token management logic to libaegisub (and rewrite it in
the process).
Add a basic thread pool based on asio and std::thread to libaegisub.
This touches nearly every file in the project and a nontrivial amount of
code had to be rewritten entirely, so there's probably a lot of broken
stuff.
Rather than loading both the local and user config files and saving to
the local directory if an option is set, simply try to load the local
config file, and if it exists switch to local mode and never even touch
the user file.
Originally committed to SVN as r6244.
Trying to decide whether an option should be an int or double after
discarding the differences between "1.0" and "1" simply isn't possible,
and even if an option was initialized correctly, if it was changed to a
round number it could get written as an int and break later.
Also convert cajun to tabs because three spaces to indent is terrible.
Originally committed to SVN as r6018.
Simplify and clean up the parsing code to better represent how VSFilter
actually handles many odd edge cases as well as making it significantly
faster.
Use an enum for syntax style IDs rather than magic numbers.
Add styles for comments, draw mode and karaoke templater variables
rather than reusing other styles and move some hardcoded style
information to the config file.
Operate on the utf-8 representation of the edit box text rather than a
wxString, as it's both faster and simpler.
Originally committed to SVN as r5615.
Remove cajun includes from all public headers and the precompiled header
Add a pile of missing standard library headers used in multiple files
to lagi_pre
Originally committed to SVN as r5452.