Commit graph

56 commits

Author SHA1 Message Date
Thomas Goyne
33a4a056a4 Move everything up a level since the root dir no longer has stuff 2014-03-11 12:14:57 -07:00
Thomas Goyne
b1639c6162 Make the entry lists be of the appropriate type rather than just AssEntry
Eliminates a bajillion dynamic casts.
2014-03-09 15:12:39 -07:00
Thomas Goyne
805481315e Split AssFile into separate lists for each section 2014-03-09 08:06:21 -07:00
Thomas Goyne
6ca0349fc8 Simplify icon handling
Eliminate the pointless runtime command name -> icon map and just make
commands responsible for their icons. Don't bother predecoding and
caching icons since it wastes some RAM (~10 MB) and decoding icons takes
a trivial amount of time.

Fix a few places where icons were being set for the wrong command names.
2013-12-26 17:43:50 -08:00
Thomas Goyne
a7f4fb5b87 Run clang-modernize on things 2013-11-23 09:57:22 -08:00
Thomas Goyne
3a852f102d Remove entirely superfluous doxygen comments in commands 2013-10-25 14:03:35 -07:00
Thomas Goyne
51d516979b Improve some help text for commands
Consistently use the imperative mood and expand some overly terse help
messages.
2013-10-25 13:54:20 -07:00
Thomas Goyne
6cd6ee9845 Use auto more places 2013-09-17 07:51:07 -07:00
Thomas Goyne
7c7cfc79e6 Delete SubtitlesGrid since it's now empty 2013-06-18 19:43:16 -07:00
Thomas Goyne
bda127144d Extract adjoin lines logic from SubtitlesGrid 2013-06-18 19:43:16 -07:00
Thomas Goyne
f21a72992b Use unique_ptr for most non-wx owning pointers 2013-06-08 19:21:49 -07:00
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
a99428c49d Extract options and MRU stuff from main.h
Nearly all of the files including main.h are doing so only for OPT_GET
and friends, which are rather unrelated to the main things that main.h
declares.
2013-01-09 16:48:31 -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
e4d6b8661b Add range adaptor for filtering to a specific subclass from a heterogeneous range
This makes looping over the subtitle file and parsed dialogue lines less
awkward in many cases.
2012-11-12 18:35:25 -08:00
Thomas Goyne
67df64e879 Use range-based for loops in a bunch of places 2012-11-12 18:35:25 -08:00
Thomas Goyne
83761d881a Convert AssFile::Line to an intrusive list
Gives O(1) pointer -> iterator conversions, better memory usage, better
performance, and overall slightly simplifies the code using it.
2012-11-10 18:05:56 -08:00
Thomas Goyne
e44c47c863 Remove $Id$ markers since git doesn't support them 2012-10-25 17:39:49 -07:00
Thomas Goyne
e4a6092b36 Use signals for selection change notifications 2012-10-12 14:54:07 -07:00
Thomas Goyne
e2e304f2cb Don't try to shift to a negative start time when shifting lines to frame zero
Originally committed to SVN as r6951.
2012-07-29 03:23:27 +00:00
Thomas Goyne
38217c6c59 Implement the timing adjustment commands
Originally committed to SVN as r6933.
2012-07-14 13:35:15 +00:00
Thomas Goyne
5a067f56e4 Add command "time/lead/both" which adds both lead in and out
Originally committed to SVN as r6742.
2012-05-02 22:42:31 +00:00
Thomas Goyne
252351b7da Don't stop audio playback when switching lines
Originally committed to SVN as r6740.
2012-05-02 22:42:18 +00:00
Thomas Goyne
99a65974e4 Move the Next Line on Commit logic to the commit command so that other commands can do different things
Originally committed to SVN as r6718.
2012-04-27 19:07:07 +00:00
Thomas Goyne
36548b93b1 Add a dialog manager for modeless dialogs so that they don't have to all be stuffed into the context
Originally committed to SVN as r6553.
2012-03-09 00:23:41 +00:00
Thomas Goyne
d5577b994c Move lead in/out logic to the timing controllers
This makes adding lead in/out work correctly when autocommit is
disabled, and improves the behavior of adding lead-in when in karaoke
mode.

Originally committed to SVN as r6502.
2012-02-22 22:00:54 +00:00
Thomas Goyne
4ea45627b5 Remove periods from the end of help strings
Originally committed to SVN as r6423.
2012-02-01 18:47:26 +00:00
Thomas Goyne
642a9df2bf Correct the tooltip for 'Shift to Current Frame'
Originally committed to SVN as r6382.
2012-01-27 20:04:05 +00:00
Thomas Goyne
c0b599fbae Only play audio on next/prev line in karaoke mode
Originally committed to SVN as r6335.
2012-01-22 17:15:25 +00:00
Thomas Goyne
e2984b93b0 Rename time/sort/* to grid/sort/*
Sorting lines doesn't effect the timing of them, and sorting by style
doesn't even involve time in any way. Moving lines up and down is
already in the grid category, so it seems logical to put sorting there
as well.

Originally committed to SVN as r6286.
2012-01-13 20:18:48 +00:00
Thomas Goyne
e8ba128fa8 Synchronize a bunch of similar but not quite identical strings. Closes #1081.
Originally committed to SVN as r6213.
2012-01-08 01:05:25 +00:00
Thomas Goyne
71345af81a Overload operator int() on AssTime and remove GetMS/SetMS
Originally committed to SVN as r6123.
2011-12-22 21:28:51 +00:00
Thomas Goyne
2c2bb54e11 Add access keys for most entries in the main menu bar and eliminate a few duplicates. Updates #1078.
Originally committed to SVN as r5876.
2011-11-18 05:00:20 +00:00
Thomas Goyne
8daa6cfdc2 When setting the start or end time of a subtitle line to the current video frame, if the resulting line duration would be less than one frame also update the other time
Originally committed to SVN as r5742.
2011-10-17 17:52:31 +00:00
Thomas Goyne
6895e91e7c Fix validation for Make Lines Continuous
Originally committed to SVN as r5741.
2011-10-17 17:52:22 +00:00
Thomas Goyne
bf5e504c59 Combine duplicated commands time/snap/frame and time/frame/current into one command that actually works
Originally committed to SVN as r5736.
2011-10-12 23:08:11 +00:00
Thomas Goyne
3ff8591c22 Add a third period to ellipses with only two
Originally committed to SVN as r5705.
2011-10-01 18:35:12 +00:00
Thomas Goyne
3c4191e649 Kill SubtitlesGrid::SetSubsToVideo
Originally committed to SVN as r5597.
2011-09-15 05:17:22 +00:00
Thomas Goyne
0c4eb020a4 Rewrite the shift times dialog, detangling it from the grid and making it modeless, and add support for characters outside the local charset in the shift history file path. Closes #1269.
Originally committed to SVN as r5596.
2011-09-15 05:17:14 +00:00
Thomas Goyne
934a5b24eb Refine the commit types
Switch to a bitmask with much more finely-grained information about what
changed in the commit, fixing a few potential correctness problems and
significantly improving the performance of several scenarios where commits
are spammed very frequently.

Originally committed to SVN as r5590.
2011-09-15 05:16:32 +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
ec2c36c743 Add type flags to commands
Originally committed to SVN as r5464.
2011-07-15 04:05:56 +00:00
Thomas Goyne
f098e2fac8 Add an optional Validate method to commands
Originally committed to SVN as r5459.
2011-07-15 04:05:22 +00:00
Thomas Goyne
2eb4c856e8 Simplify and clean up command management code
Originally committed to SVN as r5456.
2011-07-15 04:05:01 +00:00
Thomas Goyne
256e098aa7 Remove header include order requirements
Originally committed to SVN as r5449.
2011-07-15 04:04:13 +00:00
Thomas Goyne
63538d125e Implement lead in/out commands
Originally committed to SVN as r5448.
2011-07-15 04:04:07 +00:00
Thomas Goyne
e0051e09e3 Use commands for most of the buttons in the audio box and add hotkey support
Originally committed to SVN as r5233.
2011-01-17 23:54:05 +00:00
Thomas Goyne
f79c9e57a0 Add commands for most of the audio box buttons/hotkeys
Originally committed to SVN as r5232.
2011-01-17 23:53:59 +00:00
Thomas Goyne
a1bd974969 Partially convert the subtitles grid's context menu over to using commands
Originally committed to SVN as r5216.
2011-01-16 07:17:46 +00:00
Thomas Goyne
df1dce3593 Kill SubtitlesGrid::ass and SubtitlesGrid::EditBox and convert everything that used them over to agi::Context
Originally committed to SVN as r5215.
2011-01-16 07:17:36 +00:00