Commit graph

153 commits

Author SHA1 Message Date
Thomas Goyne
a566955047 Rename signals.h to signal.h
Originally committed to SVN as r5075.
2010-12-31 21:02:42 +00:00
Thomas Goyne
edff7d6a2d Rewrite keyframe loading and saving code and move it to libaegisub
Originally committed to SVN as r5073.
2010-12-31 21:02:17 +00:00
Amar Takhar
063cd0480d OS X also needs typename to be defined within the template, that makes Windows,BSD and OS X, it's better to exclude platforms when we hit them.
Originally committed to SVN as r4920.
2010-12-08 18:58:10 +00:00
Amar Takhar
32bb692521 Define typename in the Signal template for FreeBSD as well. I'm not sure why this is required (yet) but we may need it on other platforms as well.
Originally committed to SVN as r4916.
2010-12-08 14:20:53 +00:00
Thomas Goyne
0e6d8631fd Add scoped_ptr.h
Originally committed to SVN as r4902.
2010-12-07 19:09:37 +00:00
Thomas Goyne
13f052317e Convert OptionValue over to agi::signal
Originally committed to SVN as r4899.
2010-12-07 19:09:15 +00:00
Thomas Goyne
4fc1ff6ad6 Add simple signal/slot implementation loosly based on boost.sigal
Originally committed to SVN as r4898.
2010-12-07 19:09:08 +00:00
Thomas Goyne
75285192a3 Add overloaded operator-> to agi::line_iterator
Originally committed to SVN as r4846.
2010-11-17 05:44:02 +00:00
Thomas Goyne
1f894561c3 Actually set options' default values
Originally committed to SVN as r4842.
2010-11-11 04:48:37 +00:00
Thomas Goyne
b4739d2aee gcc 4.5 compilation fixes
Originally committed to SVN as r4797.
2010-10-11 04:25:02 +00:00
Thomas Goyne
fd5c1ecffc Fix writing of newlines on windows in charsets wider than one byte
Originally committed to SVN as r4786.
2010-09-15 05:00:12 +00:00
Karl Blomster
035694c9ae I came, I saw, I hurfed a durf about macro redefinitions
Originally committed to SVN as r4781.
2010-09-14 23:53:22 +00:00
Thomas Goyne
3512c4e1fe Clean up handling of fallbacks and improve behavior somewhat with glibc iconv
Originally committed to SVN as r4776.
2010-09-09 06:47:50 +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
Amar Takhar
3c5d4bc97e Relicense libosxutil code (osx/util.cpp and include/util_osx.h) using the same license as the rest of the library. (obsd/2-clause bsdl) Done with the permission of current copyright holder jfs (Niels Martin Hansen).
Originally committed to SVN as r4744.
2010-08-14 18:45:41 +00:00
Amar Takhar
d4ba1f48ca Remove libosxutil and fold it into libaegisub.
Originally committed to SVN as r4743.
2010-08-14 17:42:37 +00:00
Thomas Goyne
46be23073e Fix a few gcc warnings
Originally committed to SVN as r4722.
2010-08-02 20:25:29 +00:00
Thomas Goyne
6407e36c87 Store inner exceptions with shared_ptr rather than a bare pointer so that the inner exception survives copies
Originally committed to SVN as r4714.
2010-07-27 03:52:32 +00:00
Thomas Goyne
a59d2a8e2e Fix 64-bit compilation errors
Originally committed to SVN as r4663.
2010-07-08 04:50:46 +00:00
Thomas Goyne
acba2c6b63 Rewrite VFR handling in Aegisub.
Kill vfr.h and vfr.cpp and use the libaegisub versions of them instead.

Rather than the globals VFR_Input and VFR_Output, everything related to
frame rate is now part of the video context. Most things which used to
use VFR_Output now call VideoContext::TimeAtFrame etc.; video providers,
rather than modifying VFR_Input directly, now have getters for their
frame rates which VideoContext calls. Read-only public access to
VFR_Input and VFR_Output are still provided (hopefully temporarily) for
a few things which were awkward to do through VideoContext.

The Avisynth provider now might correctly handle VFR MKVs which can be
opened with DirectShowSource but not DSS2.

Rework keyframe handling as well, so that it continues to match the vfr
handling in design and implementation.

Originally committed to SVN as r4662.
2010-07-08 04:29:04 +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
6623239682 Work around BOM-related issues with UTF-32 and UTF-16 with unspecified byte order
Originally committed to SVN as r4656.
2010-07-06 19:23:10 +00:00
Thomas Goyne
ee4c5dee0b Remove charsets which libiconv does not support from charsets.def
Originally committed to SVN as r4655.
2010-07-06 19:23:01 +00:00
Amar Takhar
8e912e3ff6 Include <algorithm> to get std::for_each
Originally committed to SVN as r4587.
2010-06-24 01:51:18 +00:00
Amar Takhar
b5ed0d6c8c wrap config.h include under LAGI and put -DLAGI when compiling to ensure it's only included when building libaegisub.
Originally committed to SVN as r4585.
2010-06-24 01:49:48 +00:00
Thomas Goyne
4f53324ca3 Add the name of the option to OptionValue's error messages
Originally committed to SVN as r4582.
2010-06-24 01:24:49 +00:00
Thomas Goyne
2b47f34e76 Fix a pile of actual memory leaks
Originally committed to SVN as r4575.
2010-06-24 01:24:09 +00:00
Thomas Goyne
cbf201ab86 Fix some "leaks" of things that should actually be alive for the lifetime of the program to reduce noise.
Originally committed to SVN as r4574.
2010-06-24 01:24:02 +00:00
Thomas Goyne
75bd20a6dd Fix the rest of the build errors when not using precompiled headers
Originally committed to SVN as r4530.
2010-06-17 00:23:44 +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
340cc1d7f1 Fix compilation with precompiled headers disabled.
Originally committed to SVN as r4504.
2010-06-14 18:02:58 +00:00
Thomas Goyne
612b583e2b Move cajun includes into the cpp files rather than headers so that only files in libaegisub include them.
Originally committed to SVN as r4473.
2010-06-11 02:25:07 +00:00
Amar Takhar
ea577f8245 Re-work types.h for the second time, this is most likely not the final version, it's difficult to figure out a solution that makes the most sense when most of the code hasn't been written/moved over yet.
Originally committed to SVN as r4468.
2010-06-09 02:07:43 +00:00
Amar Takhar
931cc7f461 * Remove all instances of wxLogDebug and replace them with LOG_W, LOG_D, LOG_E and LOG_D_IF as required.
* Add LOG_(D|W|I)_IF for conditional logging.

Originally committed to SVN as r4465.
2010-06-08 23:21:39 +00:00
Amar Takhar
2aeb0bdffb Sigh, -ansi isn't the solution since other compilers may define 'unix', for now the namespace has been called u_nix, hopefully this is safe but who knows...
Originally committed to SVN as r4445.
2010-06-06 02:32:50 +00:00
Amar Takhar
acc9e53714 Remove stray ;'s
Originally committed to SVN as r4444.
2010-06-05 23:44:07 +00:00
Amar Takhar
2d9eee4ea9 Add struct tm which mimics the struct on unix. Also setup the types file into seperate namespaces for clarity. The corrosponding change to windows/utils.cpp snuck into r4437.
Originally committed to SVN as r4438.
2010-06-05 18:17:55 +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
Niels Martin Hansen
5e8d5b221b Compiling, but untested, option change notifications. Doesn't seem to affect Aegisub aversely.
Has the limitation that one object can only subscribe once to one option value, but that shouldn't actually be a problem. (One object cannot have two different of its member functions subscribing to one option value.)

Originally committed to SVN as r4415.
2010-06-03 05:07:47 +00:00
Amar Takhar
fc9e01c68a * Forward declare the LogSink global
* Change GetSink() to return a const pointer.

Originally committed to SVN as r4405.
2010-06-02 23:45:51 +00:00
Amar Takhar
33011cb5ed Split EmitterSTDOUT into unix/log.cpp and windows/log.cpp, the windows version is commented at the moment.
Originally committed to SVN as r4397.
2010-06-01 08:17:27 +00:00
Amar Takhar
7e83443c3e Fix the Windows build, there are a couple of things to note:
* I rebroke the stdout logger I'll fix that in unix.
 * There is a new header libaegisub/types.h which is a temp solution until I sort out something more realistic.  It's too early to tell what the proper solution will be.

Originally committed to SVN as r4394.
2010-06-01 08:03:17 +00:00
Amar Takhar
badee30d17 Sigh, not diffing before committing bites me again: remove useless deltas that shouldn't have been committed.
Originally committed to SVN as r4392.
2010-06-01 05:14:00 +00:00
Amar Takhar
37b904b75e Create time_log() to return a timeval so I can implement this on windows as well.
Originally committed to SVN as r4391.
2010-06-01 05:11:18 +00:00
Amar Takhar
0a453fe127 Move Serverity_ID below the definition of log where it should be.
Originally committed to SVN as r4373.
2010-05-31 22:47:38 +00:00
Amar Takhar
9d0c5a4890 Add Googles mutex.h which seems to be used in many of googles projects. It's better to use something that's well-tested rather than rolling our own. Also a huge time saver.
Originally committed to SVN as r4372.
2010-05-31 21:57:08 +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
Amar Takhar
2d57debd49 Commit the beginings of the Path class to hold the internal representation of paths, this is extremely rough since I have to wait until we can do charset conversion in libaegisub to handle windows paths before going any further.
Originally committed to SVN as r4359.
2010-05-24 17:57:07 +00:00
Amar Takhar
f7f59e5e1d Add an ErrorString utility which converts the code from GetLastError() into a human readable std::string.
Originally committed to SVN as r4345.
2010-05-22 21:09:37 +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