Commit graph

237 commits

Author SHA1 Message Date
Thomas Goyne
a25c5c1909 Rewrite the subtitles edit control's syntax highlighting
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.
2011-09-28 19:44:34 +00:00
Thomas Goyne
0c1794a93f Don't silently fail to start up if a config file is invalid
Originally committed to SVN as r5535.
2011-08-17 05:32:09 +00:00
Thomas Goyne
330411c94a Add some special cases to line_iterator that makes it significantly faster in common cases
Originally committed to SVN as r5534.
2011-08-17 05:32:01 +00:00
Thomas Goyne
3c18ed542c Clean up libaegisub includes
Consistently use the C++ names for headers rather than a combination of the
C and C++ names.

Remove empty LAGI_PRE blocks.

Remove checks for both AGI_PRE and LAGI_PRE and change a check for only
AGI_PRE to LAGI_PRE.

Originally committed to SVN as r5516.
2011-07-26 22:25:21 +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
263d161d26 Don't pointlessly store a copy of the default hotkeys json in memory
Originally committed to SVN as r5510.
2011-07-26 20:26:09 +00:00
Thomas Goyne
af484a469d Make get_hotkey_str_first more likely to return the desired hotkey when multiple are available
Originally committed to SVN as r5508.
2011-07-26 19:52:57 +00:00
Thomas Goyne
dd38e1f07f Don't swallow errors when parsing json and make agi::json_util::file actually work
Originally committed to SVN as r5507.
2011-07-26 19:52:47 +00:00
Thomas Goyne
dabcdb2e8b Uninvert hotkey::Scan's return value
Originally committed to SVN as r5506.
2011-07-26 19:52:36 +00:00
Thomas Goyne
ffe8c7a5d6 Only enable the 'Always' hotkey context when medusa mode is on
Originally committed to SVN as r5505.
2011-07-26 19:52:25 +00:00
Thomas Goyne
7deebf759b Remove the concept of disabled hotkeys; it's unnessesary and wasn't actually used
Originally committed to SVN as r5504.
2011-07-26 19:52:15 +00:00
Thomas Goyne
acd26c4c48 Fiddle with the log output format so that Visual Studio's parser reads it correctly
Originally committed to SVN as r5503.
2011-07-26 19:52:07 +00:00
Thomas Goyne
87abcddd87 Make the MRU code not so bizzarely overcomplicated
Originally committed to SVN as r5502.
2011-07-26 19:51:56 +00:00
Thomas Goyne
7824348f10 Include the name of the option in the exception thrown when an option is not found
Originally committed to SVN as r5501.
2011-07-26 19:51:47 +00:00
Thomas Goyne
a33da9cba5 Replace all uses of std::cout in libaegisub with logging statements and eliminate a lot of nonsense in the windows implementation of acs::Check
Originally committed to SVN as r5500.
2011-07-26 19:51:38 +00:00
Thomas Goyne
64a3cc94ae Fix error checking in agi::util::strtoi
Originally committed to SVN as r5499.
2011-07-26 19:51:28 +00:00
Thomas Goyne
231adad93f Implement agi::util::freespace for Windows
Originally committed to SVN as r5497.
2011-07-26 19:51:07 +00:00
Thomas Goyne
52e60f09dc Fix path to config.h in path.cpp
Originally committed to SVN as r5493.
2011-07-20 20:08:51 +00:00
Niels Martin Hansen
b60e3a5bd4 Rename another clashing file in libaegisub.
Originally committed to SVN as r5490.
2011-07-18 01:08:41 +00:00
Thomas Goyne
72bc33fda3 Fix compilation errors with precompiled headers disabled
Originally committed to SVN as r5484.
2011-07-16 06:42:55 +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
8ccc0acc9d Fix reporter compilation errors
Originally committed to SVN as r5481.
2011-07-16 03:36:42 +00:00
Thomas Goyne
c32e372dd4 Fix leak of the Options object in agi::Path and potential overwriting of the config file with an out of date version on shutdown
Originally committed to SVN as r5477.
2011-07-15 17:36:53 +00:00
Thomas Goyne
a8a30d6ac1 Fix hotkey memory leaks
Originally committed to SVN as r5472.
2011-07-15 17:36:06 +00:00
Thomas Goyne
b25066e3c3 Remove a write-only variable in option.cpp
Originally committed to SVN as r5453.
2011-07-15 04:04:42 +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
Thomas Goyne
b5a02e202e Rename libaegisub/windows/util.cpp so that it's actually used
Originally committed to SVN as r5443.
2011-07-15 04:03:36 +00:00
Thomas Goyne
67e9384ef4 Remove a bunch of pointless consts from agi::Path and rename the windows implementation so that it's actually used
Originally committed to SVN as r5442.
2011-07-15 04:03:28 +00:00
Amar Takhar
c53492edcd Remove <sys/param.h> and <sys/mount.h> from common/util.cpp this stems from my accident involving placing code meant for unix/util.cpp into unix/common.cpp which was partially fixed in r5366.
Originally committed to SVN as r5371.
2011-02-23 03:34:23 +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
Amar Takhar
6ee90d4bb1 Add <vector>
Originally committed to SVN as r5369.
2011-02-23 03:24:08 +00:00
Grigori Goronzy
28e1acfeba libaegisub: do not free string returned by getenv()
getenv() returns a string that is part of internal process data and
should never be modified and/or free()'d.

Originally committed to SVN as r5368.
2011-02-23 00:55:48 +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
bbc0f6f859 Document some utility methods.
Originally committed to SVN as r5345.
2011-02-10 02:47:41 +00:00
Amar Takhar
2c6abb9a98 Instead of throwing return 0 for invalid values. This happens anyway if the input is invalid so it makes the most sense to return 0 for invalid ranges.
Originally committed to SVN as r5343.
2011-02-10 01:36:25 +00:00
Amar Takhar
ef7b3c04e3 Add <climits>
Originally committed to SVN as r5342.
2011-02-10 01:33:34 +00:00
Amar Takhar
3522c0b4bd Add a strtoi function. (with unit tests)
Originally committed to SVN as r5340.
2011-02-10 00:41:15 +00:00
Amar Takhar
6615d3981f Add <locale>.
Originally committed to SVN as r5339.
2011-02-09 23:56:24 +00:00
Amar Takhar
75e07c7aa7 Add a short method to make an std::string lowercase.
Originally committed to SVN as r5335.
2011-02-09 22:31:44 +00:00
Niels Martin Hansen
7638375282 Get rid of a few unused variable warnings.
Originally committed to SVN as r5333.
2011-02-09 21:56:10 +00:00
Niels Martin Hansen
bc002d749c Make Windows path.cpp actually build. Still not really tested.
Originally committed to SVN as r5332.
2011-02-09 21:55:40 +00:00
Amar Takhar
c603c21b86 Print a message to the user and exit(1) if HOME is not set in the users environment.
Originally committed to SVN as r5324.
2011-02-08 22:40:55 +00:00
Amar Takhar
355ad91105 * Instead of ~ use getenv("HOME") to get the users home directory.
* Fix Locale() to return P_LOCALE
 * Change data and doc values to P_DATA and P_DOC.

Originally committed to SVN as r5322.
2011-02-08 04:22:52 +00:00
Amar Takhar
961c1245f7 Remove const in path.cpp (missed in r5320)
Originally committed to SVN as r5321.
2011-02-08 03:53:34 +00:00
Amar Takhar
bf05289495 * Remove misplaced const on a void method.
* Forward declare Options to avoid including options.h in the header.

Originally committed to SVN as r5320.
2011-02-08 03:48:00 +00:00
Niels Martin Hansen
7ae6e6da88 Completely untested implementation of agi::Path for Windows.
Originally committed to SVN as r5319.
2011-02-08 00:21:42 +00:00
Amar Takhar
78ed8e3694 Add stub path file for Windows and hand-edit vcproj to include the file.
Originally committed to SVN as r5318.
2011-02-07 18:02:26 +00:00
Amar Takhar
0a54e9ca06 Fix inclusion of config.h, when I was writing this I added a relative path directly to acconf.h
Originally committed to SVN as r5316.
2011-02-07 17:36:24 +00:00
Amar Takhar
a35962923f Finish agi::Path so we can actually use it, our current path system is brutal and I needed this for libmedia. I'll be adding OS X support shortly: someone else will have to figure out what to do with windows it's completely trivial see unix/path.cpp and check libaegisub/path.h for the return values.
Originally committed to SVN as r5315.
2011-02-07 16:39:49 +00:00
Amar Takhar
7b06c334aa Add missing headers and change StdioProgressSink() to use std::cout and friends.
Originally committed to SVN as r5314.
2011-02-07 00:46:49 +00:00
Amar Takhar
e27c3e15b8 Add several progress factories to handle progress bars. The GUI version will come from code within aegisub.
Originally committed to SVN as r5313.
2011-02-07 00:12:57 +00:00
Amar Takhar
73913fb0b8 Remove mutex.h from common/log.cpp until the windows build is fixed.
Originally committed to SVN as r5312.
2011-02-06 20:45:46 +00:00
Amar Takhar
874950382c s/acconf.h/config.h/ -- I forgot I actually fixed this when adding mutex.h so it was already working with the exception of the namespace change.
Originally committed to SVN as r5311.
2011-02-06 20:19:25 +00:00
Amar Takhar
2edbc8c8c1 Fix mutex.h so we can actually use it.
Originally committed to SVN as r5309.
2011-02-06 19:50:59 +00:00
Amar Takhar
f486f8dea8 Commit missed changes to libaegisub/Makefile to remove media code.
Originally committed to SVN as r5296.
2011-02-06 00:07:19 +00:00
Amar Takhar
66b6fdcfc8 Move video_frame.cpp which was left out of r5292.
Originally committed to SVN as r5293.
2011-02-05 23:46:09 +00:00
Amar Takhar
511b37ee48 Move converted code out of libaegisub and into libmedia.
Originally committed to SVN as r5292.
2011-02-05 23:43:20 +00:00
Amar Takhar
ac2c6508dd Strategically place comments to stub out AskForTrackSelection() and CleanCache().
Originally committed to SVN as r5285.
2011-02-03 18:12:42 +00:00
Amar Takhar
d59e0dd075 Add support for removing ffms support and properly link ffms into libaegisub.
Originally committed to SVN as r5283.
2011-02-03 18:08:41 +00:00
Amar Takhar
a733260603 Add missing headers.
Originally committed to SVN as r5281.
2011-02-03 17:15:38 +00:00
Amar Takhar
ac70f229dc Re-license video_frame.(cpp|h) with permission of copyright holder (Rodrigo Braz Monteiro).
Originally committed to SVN as r5280.
2011-02-03 15:52:06 +00:00
Amar Takhar
ffff58d698 Compilation fixes now that ffmpegsource_common.cpp has been moved over. Everything compiles correctly now.
Originally committed to SVN as r5279.
2011-02-03 15:49:44 +00:00
Amar Takhar
b47dd1e220 Add mid() template to util namespace.
Originally committed to SVN as r5278.
2011-02-03 15:49:13 +00:00
Amar Takhar
bb4aa727d3 Add media/* to the build on Unix.
Originally committed to SVN as r5277.
2011-02-03 15:48:46 +00:00
Amar Takhar
36549ff724 Add media.h -- I'm not sure if this will be the perm name, it currently holds exception definitions.
Originally committed to SVN as r5276.
2011-02-03 15:48:18 +00:00
Amar Takhar
93ceb59b0f Move ffmpegsource_common.(cpp|h) and change the license to fit the rest of libaegisub with permission of the current license holder (Karl Blomster)
Originally committed to SVN as r5275.
2011-02-03 15:47:43 +00:00
Amar Takhar
bcafbe2083 Move ffms_* files over to media/
Originally committed to SVN as r5274.
2011-02-03 01:18:43 +00:00
Amar Takhar
629b819e37 Move video_frame.(cpp|h) to libaegisub. The license has not been changed however I have an email sent to amz, I will change it once he responds.
Originally committed to SVN as r5273.
2011-02-03 01:18:14 +00:00
Amar Takhar
f5308fe65b Move video_provider_ffmpegsource.(cpp|h) and change the license to fit the rest of libaegisub with permission of the current license holder (Karl Blomster)
Originally committed to SVN as r5272.
2011-02-03 01:17:15 +00:00
Amar Takhar
cddfe3ed20 Wrap code under the agi namespace.
Originally committed to SVN as r5271.
2011-02-02 23:23:48 +00:00
Amar Takhar
cacc3516c1 This should have gone into r5269: These files were re-licensed with permission of the original author. (Karl Blomster).
Originally committed to SVN as r5270.
2011-02-02 23:20:03 +00:00
Amar Takhar
1219b069b1 Copy audio_provider_ffmpegsource.(cpp|h) to ./ffms_audio.(cpp|h) and remove wx usage.. The plan is to move a/v support to libaegisub and write unit tests to make sure we can open/close/seek the "official" formats we want to support.
Originally committed to SVN as r5269.
2011-02-02 23:11:17 +00:00
Thomas Goyne
3f9bead41a Use the tr1 version of <tuple> when building with gcc
Originally committed to SVN as r5235.
2011-01-18 00:29:40 +00:00
Thomas Goyne
04a4c074b0 Add function to get the string representation of the hotkeys for a command, use it when generating the menu
Originally committed to SVN as r5230.
2011-01-17 23:53:46 +00:00
Thomas Goyne
cd4b032c25 Make agi::hotkey::Scan const
Originally committed to SVN as r5229.
2011-01-17 23:53:38 +00:00
Thomas Goyne
403d465475 Fix hotkeys with non-alphanumeric keys other than back, return, escape, space and delete
Originally committed to SVN as r5217.
2011-01-16 07:17:53 +00:00
Thomas Goyne
1aeded1a29 Make scoped_ptr's constructor explicit
Originally committed to SVN as r5202.
2011-01-16 07:16:07 +00:00
Amar Takhar
03ca62df22 Include dependency files into the Makefiles. This gives us dep tracking for headers.
Originally committed to SVN as r5162.
2011-01-10 21:27:39 +00:00
Amar Takhar
c2a81a5dd7 Add a cast to make x64 build on windows happy.
Originally committed to SVN as r5155.
2011-01-09 02:49:49 +00:00
Niels Martin Hansen
a13e0ddedf Clear out some warnings emitted by Visual C++ 2010.
On 32 bit VC 2010, std::streamsize is 64 bit while size_t is 32 bit.

Originally committed to SVN as r5151.
2011-01-08 21:58:48 +00:00
Niels Martin Hansen
abf9ee645b std::basic_streambuf::_Sgetn_s was removed was Visual C++ 2010 for some reason.
Originally committed to SVN as r5150.
2011-01-08 21:54:31 +00:00
Amar Takhar
3f110101aa Ensure the proper cflags are set for common/charset_conv.cpp in libaegisub. Also fix iconv include path on *bsd.
Originally committed to SVN as r5145.
2011-01-08 17:46:46 +00:00
Amar Takhar
319ac2d4bb Catch all exceptions when deciding whether to load the default config.
Originally committed to SVN as r5136.
2011-01-08 12:13:24 +00:00
Amar Takhar
0d7b2c6e76 Add missing headers when not using precompiled header support. Some minor formatting in libaegisub/common/hotkey.cpp.
Originally committed to SVN as r5135.
2011-01-08 12:10:40 +00:00
Thomas Goyne
e450cb3e7e Fix include paths
Originally committed to SVN as r5132.
2011-01-05 18:40:37 +00:00
Amar Takhar
167f09a610 Merge the dynamic menu, hotkey and toolbar branch to trunk. This doesn't include Windows support as vs2008 was being a major pain. This involves revisions r4921:4950, r4961:5002, r5005:5006, r5008:5056, r5062:5065, r5072, r5081:5082, r5087, r5096:5110, r5124:5125. Updates #1258.
Originally committed to SVN as r5126.
2011-01-05 13:00:46 +00:00
Amar Takhar
cdc73b17d2 Add support for bitmask options to Options. First one is to avoid flushing the config to disk which we don't want to happen when the reporter uses Options to read config values.
Originally committed to SVN as r5123.
2011-01-04 04:24:40 +00:00
Thomas Goyne
5920c3124b Make agi::Signal uncopyable
Originally committed to SVN as r5076.
2010-12-31 21:02:49 +00:00
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
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
Amar Takhar
5d73bcc598 Remove common/option_value.cpp it was converted to use signals in r4899.
Originally committed to SVN as r4917.
2010-12-08 14:21:45 +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
Amar Takhar
819a298246 Add -Wno-variadic-macros to silence "warning: anonymous variadic macros were introduced in C99" with GCC.
Originally committed to SVN as r4915.
2010-12-08 13:35:33 +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