Thomas Goyne
8d8ae122ee
Use wx events for invoking on the main thread on OS X
...
Dispatching to the main queue with GCD does not work when there is a
modal dialog active.
2014-07-23 15:30:28 -07:00
Thomas Goyne
584284aa79
Reject vfr timecodes which are all identical
2014-07-15 09:11:40 -07:00
Thomas Goyne
897f9d1254
Eliminate some warnings
2014-07-14 10:10:22 -07:00
Thomas Goyne
97c59e2630
Fix non-pch compilation
2014-07-14 10:10:22 -07:00
Thomas Goyne
92b8b2851b
Don't build the dialogue lexer on every use
...
Building the lexer takes much longer than actually lexing, and since the
lexer is stateless there's no reason not to just make it static.
2014-07-14 10:10:22 -07:00
Thomas Goyne
706a72d5c1
Eliminate several memory allocations per line when reading thesaurus files
2014-07-14 10:10:21 -07:00
Thomas Goyne
bffbae0ed9
Fix vc++ compilation
2014-07-10 12:55:38 -07:00
Thomas Goyne
a5c2ef273f
Add tests for floating point sample conversion
2014-07-10 11:44:56 -07:00
Thomas Goyne
f32bdff84a
Add tests for the sample doubling converter and make it work correctly
2014-07-10 11:44:56 -07:00
Thomas Goyne
93ad15efb1
Reuse the decoding buffer in the audio converters
2014-07-10 11:44:56 -07:00
Thomas Goyne
b9c75d8706
Add tests for the audio bitdepth conversions
...
And fix some bugs in it, and make it not rely on undefined behavior.
2014-07-10 11:44:56 -07:00
Thomas Goyne
585e9489d9
Move some of the audio provider machinery to libaegisub
...
And add tests.
2014-07-10 11:44:56 -07:00
Thomas Goyne
e713f741a4
Make some functions static
2014-07-08 16:38:16 -07:00
Thomas Goyne
a58ed7343d
Add Aegisub's include dirs before the system ones rather than after
2014-07-07 09:42:02 -07:00
Thomas Goyne
a11da3350c
Save a backup copy of the old hotkey file if migrating from the old format
2014-07-07 09:42:02 -07:00
Thomas Goyne
365c04333c
Install the unicode-compatible Lua module loader before loading moonscript
...
Closes #1760 .
2014-07-07 09:23:36 -07:00
Thomas Goyne
935c6bc3a7
Store hotkeys in a less dumb format
2014-07-06 19:25:49 -07:00
Thomas Goyne
3b34ed9a77
Move AssTime to libaegisub and add tests
2014-07-06 19:25:49 -07:00
Thomas Goyne
f0f836c47b
Eliminate a pointless std::map in charset_conv
2014-07-06 19:25:48 -07:00
Thomas Goyne
a22dd0f9ca
Clean up the json parser a little
2014-07-06 19:25:48 -07:00
Thomas Goyne
d9016cc8ea
Debloat and slightly speed up the MRU code
2014-07-06 19:25:48 -07:00
Thomas Goyne
518342b919
Make the hotkey code a bit less bloated
2014-07-06 19:25:48 -07:00
Thomas Goyne
df8ad34838
Eliminate pointless runtime datastructures for CalltipProvider
...
And add some tests and make it actually work correctly.
2014-07-04 20:37:36 -07:00
Thomas Goyne
93522e30a8
Use a static table of tokens for agi::Path
...
The set of possible tokens is fixed, so using std::map is a bunch of
pointless overhead (that turns out to not even really simplify the
code).
2014-07-04 20:37:36 -07:00
Thomas Goyne
6ce9ce1546
Remove unused helper function
2014-07-03 10:57:53 -07:00
Thomas Goyne
4c88449e4c
Make UnknownElement moveable and not copyable
...
And remove the unused comparison functionality.
2014-06-29 10:45:26 -07:00
Thomas Goyne
4c0e578eda
Rewrite the remaining bits of json::Writer
2014-06-29 10:45:26 -07:00
Thomas Goyne
bc410a99f6
Change the in-memory storage of options to a sorted vector
2014-06-29 10:01:00 -07:00
Thomas Goyne
c9608ab610
Remove an exception not used for anything useful
2014-06-28 19:49:39 -07:00
Thomas Goyne
0153987e02
Eliminate warnings in lpeg
2014-06-24 09:06:32 -07:00
Thomas Goyne
68eaab0f43
Convert the build system to non-recursive make
...
Speeds up a no-op build from 500ms to 60ms and significantly improves
dependency tracking.
2014-06-17 11:37:20 -07:00
Thomas Goyne
7780fadfc6
Fix restarting the application after changing the UI language on OS X
2014-06-14 06:51:53 -07:00
Thomas Goyne
789ff25f27
Remove some exceptions not used for much of anything
2014-06-11 12:52:30 -07:00
Thomas Goyne
cfd2698b03
Use NSSpellChecker rather than hunspell on OS X
...
Main benefit is it removes the need to ship 50 MB of dictionaries.
2014-06-11 12:33:09 -07:00
Thomas Goyne
6500b379bd
Remove all distfile stuff from the build system
...
It's unused and out of date.
2014-06-09 17:20:56 -07:00
Thomas Goyne
056a775751
Set ?dictionary to the correct thing on OS X. Closes #1766 .
2014-06-08 08:00:11 -07:00
Thomas Goyne
882e6894ff
Use GCD on OS X rather than boost.asio for the thread pool
2014-06-07 08:48:40 -07:00
Thomas Goyne
421d5ca52e
Add #ifdef __cplusplus to the precompiled headers to make Xcode happy
2014-06-05 08:35:50 -07:00
Thomas Goyne
47303007eb
Remove the ?docs token
...
It's not actually used anywhere and not even set on Windows.
2014-06-04 14:15:26 -07:00
Thomas Goyne
eebd1dba21
Use iconv rather than std::wstring_convert
...
libstdc++ 4.8 does not have <codecvt>.
2014-05-30 11:53:15 -07:00
Thomas Goyne
59489b8f8c
Extract some of the string formatter implementation to format.cpp
2014-05-30 11:53:15 -07:00
Thomas Goyne
37c02ae127
Replace wxString::Format with agi::format
...
It's modestly faster, significantly more type-safe, and doesn't assert
when there's too few arguments, which causes problems for plural forms.
Closes #1733 .
2014-05-30 11:53:14 -07:00
Thomas Goyne
8d26c66d0f
Remove a bunch of unused functionalty from agi::Exception
2014-05-30 11:53:14 -07:00
Thomas Goyne
b43788fa7f
Replace boost::format with agi::format
...
boost::format is slow to compile, slow to run, and has an unpleasant
interface.
2014-05-30 08:30:31 -07:00
Thomas Goyne
8ba286c544
Fix moving files to the front of the MRU list
2014-05-30 08:30:31 -07:00
Thomas Goyne
72748d45f7
Fix crash on v1 timecode files with zero override ranges
2014-05-30 08:30:31 -07:00
Thomas Goyne
eec83bb32b
Cut down on FileNotFound exceptions thrown on startup
2014-05-27 06:42:46 -07:00
Thomas Goyne
d08f4e73b4
Only check for permissions if opening a file fails
2014-05-27 06:42:46 -07:00
Thomas Goyne
4da1443194
Store connected slots in a vector rather than a map
2014-05-26 09:34:20 -07:00
Thomas Goyne
6c685daf98
Ditch boost.circular_buffer
...
It drags in a ton of crap, is kinda slow at runtime due to using
std::deque, and doesn't actually make the code much simpler than just
using a manual ring buffer.
2014-05-26 09:34:19 -07:00