Commit graph

239 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
c3fb54153f Store selection and active line in undo info and restore them on undo 2014-03-05 17:31:33 -08:00
Thomas Goyne
55ff9bfd50 Simplify HelpButton a little
Switch to flat_map for trivially less memory usage and just use a global
map rather than a heap-allocated map since it's not
(de)initialization-order sensitive.
2013-12-26 17:43:55 -08:00
Thomas Goyne
6fad60e58d Use NSDMIs where applicable 2013-12-11 18:50:12 -08:00
Thomas Goyne
a7f4fb5b87 Run clang-modernize on things 2013-11-23 09:57:22 -08:00
Thomas Goyne
bf13603ae1 Swallow all filesystem errors when automatically opening audio from video 2013-11-10 07:25:31 -08:00
Thomas Goyne
01a38a5e86 Use more make_unique
Shuts up a bunch of Coverity false-positives and might fix a true
positive or two.
2013-10-23 17:08:12 -07:00
Thomas Goyne
73e1dc1b60 Honor the color matrix tag from the subtitles file when appropriate
If the script's matrix matches the video's matrix, use that even if
Force BT.601 is on, and if it's TV.601, use that even if Force BT.601 is
off.

This should mostly eliminate the common problems resulting from  mixed
values of the Force BT.601 option.

Closes #1649.
2013-10-17 08:04:03 -07:00
Thomas Goyne
b254a6823b Fix double confirmation when exiting with unsaved changes
For some reason the close event is getting sent multiple times and
them getting processed in the event loop for the confirmation dialog,
resulting in two dialogs.
2013-10-16 16:41:04 -07:00
Thomas Goyne
1cdd461023 Separate UI state info from functional ASS info headers a bit
Prefix script info entries that are just storing Aegisub UI state with
"Aegisub ", and use a separate AssFile method to get/set them.
2013-10-07 17:57:16 -07:00
Thomas Goyne
7473fb1af6 Fix issues with loading the video AR from subtitles
Removing the first character from the non-custom case resulted in an
error when the value was empty and resulted in nothing happening when a
valid value was present.
2013-06-30 15:37:07 -07:00
Thomas Goyne
7c7cfc79e6 Delete SubtitlesGrid since it's now empty 2013-06-18 19:43:16 -07:00
Thomas Goyne
2781df7ce9 Use std::begin/std::end rather than countof 2013-06-08 19:21:30 -07:00
Thomas Goyne
40a7a452a2 Delay loading command line arguments until after Aegisub is fully initialized 2013-02-06 13:38:35 -08:00
Thomas Goyne
a9467836f9 Move autosave logic to SubsController 2013-02-06 13:22:34 -08:00
Thomas Goyne
a0d3dbc550 Extract Loading/Saving/Undo stuff from AssFile
Add SubsController, which deals with things like what subtitle file is
currently open, rather than the contents of the current subtitle file.
Move the rest of the relevant logic from FrameMain there in addition to
all of the stuff from AssFile.
2013-02-06 13:22:32 -08:00
Thomas Goyne
9a146d1fc0 Remove AssFile::loaded since it isn't actually used for anything 2013-02-06 13:22:17 -08:00
Thomas Goyne
bc7229782c Use an enum for the predefined aspect ratio types 2013-02-06 13:22:15 -08: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
0e7df15170 Initial implementation of the split editbox 2013-01-14 08:37:03 -08:00
Thomas Goyne
b1dbb9a94b Decouple SearchReplaceEngine from DialogSearchReplace 2013-01-13 09:00:18 -08:00
Thomas Goyne
2f4cae46b4 Move the SearchReplaceEngine instance to the context 2013-01-11 08:53:36 -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
6e3cc883b3 Replace most uses of type::iterator with auto 2012-12-22 15:35:13 -08:00
Thomas Goyne
d0f4d9df99 Replace all uses of lagi_wxString with to_wx 2012-12-22 15:18:38 -08:00
Thomas Goyne
1b15a753a1 Add .m4v to the list of video file extensions
It would be nice if this didn't require adding it in five different places...
2012-12-05 20:23:32 -08:00
Thomas Goyne
7090d2f513 Don't include wx/wx.h in subs_grid.h 2012-12-02 06:33:29 -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
67df64e879 Use range-based for loops in a bunch of places 2012-11-12 18:35:25 -08:00
Thomas Goyne
e44c47c863 Remove $Id$ markers since git doesn't support them 2012-10-25 17:39:49 -07:00
Thomas Goyne
ff6394c95e Throw only real exceptions from subtitle io stuff 2012-10-25 17:39:49 -07:00
Thomas Goyne
9547bc4ef2 Move some stuff from AssFile::Load to FrameMain::LoadSubtitles
This is still not a very good place for it, but AssFile really shouldn't
be mucking around in global program state.
2012-10-16 09:53:28 -07:00
Thomas Goyne
a53432736c Get wxMessageBox out of AssFile 2012-10-16 09:52:47 -07:00
Thomas Goyne
be94ab70f4 Extract cut/copy/delete lines logic from SubtitlesGrid 2012-10-14 18:57:57 -07:00
Thomas Goyne
a948924850 Add a TextSelectionController interface to avoid exposing the wxSTC edit directly in the context 2012-10-12 14:54:08 -07:00
Thomas Goyne
6943b868da Handle file not found errors when opening linked audio from subtitles 2012-09-21 18:07:30 -07:00
Thomas Goyne
ffab39b21f Don't automatically load audio from video if audio from that file is already open 2012-09-21 17:58:22 -07:00
Thomas Goyne
9f8e25ed0a Force LC_CTYPE to en_US.UTF-8 on OS X
When run from an app bundle the locale environment variables are unset,
and the default locale settings are bogus as a result.
2012-08-26 19:15:48 -07:00
Thomas Goyne
f2035d76fc Don't block the source of a drag-and-drop while the dropped audio/video are loading
Originally committed to SVN as r6953.
2012-08-04 16:31:44 +00:00
Thomas Goyne
de7dd7e07f Use the video AR from the script rather than the video's AR when opening linked video
Originally committed to SVN as r6946.
2012-07-24 02:40:31 +00:00
Thomas Goyne
269a206053 Fix loading linked audio when automatic opening of audio from video is enabled
Originally committed to SVN as r6945.
2012-07-24 02:40:29 +00:00
Thomas Goyne
7d2fb49828 Make the update checker configurable
Move the server and base url to the build-time configuration options and make
it disablable entirely.

Originally committed to SVN as r6911.
2012-06-21 02:09:40 +00:00
Thomas Goyne
cde9a34425 osx: Add the full screen button to the main window
Originally committed to SVN as r6879.
2012-05-26 20:16:08 +00:00
Thomas Goyne
1da7502d6e Remove pointless commented-out code
Originally committed to SVN as r6878.
2012-05-26 20:16:05 +00:00
Thomas Goyne
015d533556 Fix bad destruction order when exiting without closing the main window first
On OS X, when closing via Quit the document windows are not closed until
after OnExit is called, resulting the project context being destructed
after the global stuff, resulting in crashes on exit in some cases.

Originally committed to SVN as r6812.
2012-05-16 14:23:16 +00:00
Thomas Goyne
fc7164422c Flush options after asking the first-startup questions
Originally committed to SVN as r6789.
2012-05-15 13:39:55 +00:00
Thomas Goyne
ba413fa64d Rework destruction of FrameMain's children
wxCocoa doesn't like reparenting SubsGrid to NULL, so instead
recursively destroy all of FrameMain's children other than SubsGrid and
its parent. Fixes a crash on exit on OS X.

Originally committed to SVN as r6783.
2012-05-15 13:39:24 +00:00
Thomas Goyne
f724abd0b8 Add support for symlinking fonts rather than copying them in the fonts collector. Based on a patch by nodame.
Originally committed to SVN as r6755.
2012-05-10 14:18:47 +00:00
Thomas Goyne
742cbf16aa Add WebM to the list of supported video formats
Originally committed to SVN as r6730.
2012-05-01 02:49:33 +00:00
Thomas Goyne
123f02f0fb Process hotkeys in wxEVT_CHAR_HOOK rather than wxEVT_KEY_DOWN
Char hook events propagate by default, removing the need for the event
filter to make key down events propagate, which was causing some funny
issues.

On Windows, the char hook handler runs before menu accelerators, fixing
a bug where Default context hotkeys would override more specific ones
when they appeared on a menu. Unfortunately, this is not the case on
GTK, so the dumb accelerator-disabling hack is still required.

Originally committed to SVN as r6724.
2012-04-27 19:07:49 +00:00