Thomas Goyne
1e0f08c0ed
Mostly purge wxWidgets from non-UI stuff
...
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.
2013-02-06 13:22:15 -08:00
Thomas Goyne
e270dc9aec
Use stable_vector for AudioProviderRam's cache
...
stable_vector allocates its elements non-contiguously (as is required
for stability), while still giving O(1) indexing.
2012-12-22 14:44:35 -08:00
Thomas Goyne
96cf5ea7ed
Kill the #ifndef AGI_PRE guards
...
They don't actually improve compilation performance and make it more
annoying to modify what things are in the precompiled header.
2012-12-02 06:33:29 -08:00
Thomas Goyne
ebd56f2163
Include cstdint rather than stdint.h
2012-11-10 18:05:57 -08:00
Thomas Goyne
0893ed3f0a
Remove references to tr1
2012-11-10 18:05:57 -08:00
Thomas Goyne
9088ae994c
Remove windows.h from the precompiled header
...
It's only used by a few source files and it defines a ton of garbage.
2012-11-10 18:05:56 -08:00
Thomas Goyne
28175aadbe
Switch to boost.container for containers of incomplete types
...
STL containers are not required to support incomplete types, and while
most implementations do, clang's libc++ does not.
2012-11-10 18:05:56 -08:00
Thomas Goyne
a78417177a
Move cajun implementations from .inl files included by the headers to .cpp files
...
Originally committed to SVN as r6004.
2011-12-22 21:10:10 +00:00
Thomas Goyne
ead31761db
Include lagi_pre.h in agi_pre.h and remove all duplicates
...
This eliminates some duplicated logic and potential tr1/non-tr1 header
mismatches, and removes the need for the #if defined(AGI_PRE) ||
defined(LAGI_PRE) guard that was used in a few of the libaegisub headers.
Originally committed to SVN as r5515.
2011-07-26 22:25:10 +00:00
Thomas Goyne
665cddf235
Remove some duplicated includes in lagi_pre.h
...
Originally committed to SVN as r5514.
2011-07-26 22:24:59 +00:00
Thomas Goyne
0616b39ffe
Fix a pile of warnings
...
Originally committed to SVN as r5483.
2011-07-16 05:01:36 +00:00
Thomas Goyne
6ec63cdde1
Clean up libaegisub includes
...
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.
2011-07-15 04:04:34 +00:00
Amar Takhar
96f24d6c25
Move sys/param.h under ifndef _WIN32, I need to be more vigilant against including Unix headers in Windows builds.
...
Originally committed to SVN as r5370.
2011-02-23 03:29:30 +00:00
Grigori Goronzy
066ec3014a
libaegisub: use statvfs instead of statfs
...
statvfs is the portable POSIX defined interface and is supported on all
major UNIX platforms.
Originally committed to SVN as r5367.
2011-02-23 00:54:18 +00:00
Karl Blomster
7db22972a7
sys/mount.h and statfs(2) do not exist on windows
...
Originally committed to SVN as r5366.
2011-02-22 19:03:03 +00:00
Amar Takhar
8240d3e6b6
Add util::freespace to check for free space on a path. (with tests)
...
Originally committed to SVN as r5346.
2011-02-10 23:55:59 +00:00
Amar Takhar
ef7b3c04e3
Add <climits>
...
Originally committed to SVN as r5342.
2011-02-10 01:33:34 +00:00
Amar Takhar
6615d3981f
Add <locale>.
...
Originally committed to SVN as r5339.
2011-02-09 23:56:24 +00:00
Amar Takhar
944eaa535e
Remove universalchardet headers from the precompiled header. For some reason this was causing issues with compliation on FreeBSD, rather than investigate why I removed it since it's used by exactly 1 file (charset_ucd.cpp). If it's going to cause one problem now it may cause another later that we may not notice.
...
Originally committed to SVN as r4919.
2010-12-08 14:32:30 +00:00
Thomas Goyne
0248e7c754
Add listeners for most non-audio options that need them. Closes #1047 .
...
Originally committed to SVN as r4764.
2010-08-26 18:38:37 +00:00
Thomas Goyne
9322f95071
Rewrite vfr.cpp in libaegisub with tests. Not yet used by Aegisub itself.
...
Originally committed to SVN as r4661.
2010-07-07 05:24:16 +00:00
Thomas Goyne
929fa83dd9
Move the bulk of TextFileWriter's logic to libaegisub.
...
Originally committed to SVN as r4660.
2010-07-07 02:41:46 +00:00
Thomas Goyne
afec51c4ed
Include config.h in lagi_pre.h so that the conditional inclusion of sys/time.h actually works
...
Originally committed to SVN as r4543.
2010-06-18 06:59:55 +00:00
Thomas Goyne
61138e9b5d
Add configure check for sys/time.h
...
Originally committed to SVN as r4529.
2010-06-16 07:49:35 +00:00
Thomas Goyne
5338a60cdb
Fix compilation errors when not using precompiled headers
...
Originally committed to SVN as r4511.
2010-06-14 19:26:27 +00:00
Amar Takhar
60b9e5dee6
Define _X86_ so univeralchardet builds properly, this eventually needs to be fixed to use the autodetection code already in configure.in
...
Originally committed to SVN as r4486.
2010-06-12 07:04:46 +00:00
Thomas Goyne
b6d29443a3
Move most character set conversion code to libaegisub and make everything use the new conversion functionality.
...
Originally committed to SVN as r4423.
2010-06-03 20:32:25 +00:00
Amar Takhar
9393850884
Commit the beginings of a logging api, this is fairly complete however it has no locking.
...
Originally committed to SVN as r4371.
2010-05-31 20:55:29 +00:00
Amar Takhar
e408fe49c9
Add support for detecting character sets using UniversalChardet -- this superceeds character_detect.cpp.
...
Originally committed to SVN as r4367.
2010-05-28 07:40:21 +00:00
Thomas Goyne
0dc6a082ca
Fix memory leaks in Option
...
Originally committed to SVN as r4349.
2010-05-23 06:58:11 +00:00
Thomas Goyne
d3c33d5e7c
Fix file saving on Windows.
...
Originally committed to SVN as r4333.
2010-05-21 03:07:48 +00:00
Amar Takhar
cd8305987b
Wrap io.h with _MSC_VER since it's only needed on windows. Eventually we'll have to create our own set of defined macros for various platforms.
...
Originally committed to SVN as r4332.
2010-05-21 01:19:40 +00:00
Amar Takhar
40e12403d5
Merge all changes from the libaegisub branch into trunk, the effective range is r4175:4330. All options have been re-done and now use Cajun to support a json-backed format.
...
Initial support for low-level access and file I/O methods are included as well.
Originally committed to SVN as r4331.
2010-05-21 01:13:36 +00:00