Commit graph

4132 commits

Author SHA1 Message Date
Thomas Goyne
2d9213cdfc Add support for writing unformatted level 1 teletext to the EBU STL subtitle format
Originally committed to SVN as r6638.
2012-03-29 19:05:45 +00:00
Thomas Goyne
7335c520c1 Ensure that the text field is terminated when writing EBU STL files
The text field must be terminated with 0x8F, so write an extra block if
the last block is filled exactly.

Originally committed to SVN as r6637.
2012-03-29 19:05:37 +00:00
Thomas Goyne
4294e5857d Port the EBU STL (tech 3264) subtitle format from 2.1.9
Split the configuration dialog off into its own file and mostly decouple
it from the subtitle format.

Save last used export settings to options and restore them the next time
the dialog is opened.

Use libaegisub for charset conversion and IO rather than wxWidgets.

Use libaegisub's line-wrapping logic and finish implementing all of the
various wrapping modes.

Make unchecking the "Translate alignments" checkbox do something.

Originally committed to SVN as r6636.
2012-03-29 19:05:26 +00:00
Thomas Goyne
028fd3b4ba Add line-wrapping logic to libaegisub
Originally committed to SVN as r6635.
2012-03-29 19:05:16 +00:00
Thomas Goyne
39ca0c1b5b Fix some uses of uninitialized values on startup
Originally committed to SVN as r6634.
2012-03-29 19:05:07 +00:00
Thomas Goyne
dd0b1cf5ec Disable the busy cursor while displaying the FPS prompt when exporting subtitles
Originally committed to SVN as r6633.
2012-03-29 19:04:58 +00:00
Thomas Goyne
f31d9a5a8b Add converter to ISO-6937-2
glibc's iconv implementation supports ISO-6937-2, but libiconv doesn't
due to that these days the only place it's used is in a few old subtitle
formats. As a result, on everything but linux we need our own converter.

Conversion from ISO-6937-2 is currently not supported.

Originally committed to SVN as r6632.
2012-03-29 19:04:49 +00:00
Thomas Goyne
71776940f6 Rewrite SMPTE timecode handling
Move SMPTE handling to agi::vfr::Framerate to get all of the interesting
logic dealing with timcodes in one place, and to make it testable.

Completely rewrite the SMPTE time conversions as testing them reveals
that they were incorrect in some cases.

Originally committed to SVN as r6631.
2012-03-29 19:04:36 +00:00
Thomas Goyne
c7d3c8a5c3 Override CanWriteFile in the transation subtitle format as the default doesn't work for it
Originally committed to SVN as r6630.
2012-03-29 00:05:34 +00:00
Thomas Goyne
c4a1a93b97 Center most of the message boxes over their parent windows
Originally committed to SVN as r6629.
2012-03-28 23:59:19 +00:00
Thomas Goyne
31a0146df2 Fix crash when clicking the sort button in the style manager with no styles selected
Originally committed to SVN as r6628.
2012-03-28 23:59:10 +00:00
Thomas Goyne
a76fb7c432 Override CanSave in the SRT format to allow supported override tags
Originally committed to SVN as r6627.
2012-03-28 23:59:01 +00:00
Thomas Goyne
d49e59653f Add a version of ParseASSTags that returns the blocks rather than mutating the line
Originally committed to SVN as r6626.
2012-03-28 23:58:50 +00:00
Thomas Goyne
a03b37bdef Move the CanSave logic to the subtitle formats as it's obviously format-specific
Originally committed to SVN as r6625.
2012-03-28 23:58:40 +00:00
Thomas Goyne
0ae8479ffb Remove the check for timing in AssFile::CanSave as all non-txt formats support timing
Originally committed to SVN as r6624.
2012-03-28 23:58:28 +00:00
Thomas Goyne
6e36a897d0 Don't allow dragging audio markers to negative times
As ASS doesn't support negative times, some of the other code assumes
that times are >= 0, and it's never actually useful to have a negative
start time.

Originally committed to SVN as r6623.
2012-03-27 23:15:20 +00:00
Thomas Goyne
e4043e64a3 Add support for omitted parameters in tags to the SRT exporter
Originally committed to SVN as r6622.
2012-03-27 23:15:12 +00:00
Thomas Goyne
87d5b1b943 Fix error when exporting a file with \bord tags to SRT
Originally committed to SVN as r6621.
2012-03-27 23:15:03 +00:00
Thomas Goyne
fccec60fec Center the load/unload dialog over the main window
Originally committed to SVN as r6620.
2012-03-27 23:14:42 +00:00
Thomas Goyne
d3eaa5af9c Remove some unused options from the config file and preferences dialog
Originally committed to SVN as r6619.
2012-03-27 04:23:54 +00:00
Thomas Goyne
1d289bf8f8 Rework FrameMain::LoadList and OnSubtitlesOpen a bit
Fix some issues where a spurious load/unload dialog would be displayed
despite that nothing would be loaded even if the user selected yes, and
double-loading of audio when opening video and audio files with
automatic audio loading enabled.

Originally committed to SVN as r6618.
2012-03-27 04:23:45 +00:00
Thomas Goyne
3f70491ea6 Eliminate a few unneeded header inclusions
Originally committed to SVN as r6617.
2012-03-27 00:50:03 +00:00
Thomas Goyne
b201bee1d1 Don't mark file format filters as translatable
Originally committed to SVN as r6616.
2012-03-27 00:49:53 +00:00
Thomas Goyne
fb7638312a Make PrettySize less dumb
Originally committed to SVN as r6615.
2012-03-27 00:49:43 +00:00
Thomas Goyne
30f0a56832 Document some of the utils functions
Originally committed to SVN as r6614.
2012-03-27 00:49:33 +00:00
Thomas Goyne
e6f55bdbcb Use a binary search in IsWhitespace rather than linear
Originally committed to SVN as r6613.
2012-03-27 00:49:24 +00:00
Thomas Goyne
1f1e9a700a Use std::binary_search rather than a set in GetWordBoundaries
This is slightly faster and simpler.

Originally committed to SVN as r6612.
2012-03-27 00:49:15 +00:00
Thomas Goyne
909a0ca280 Remove some unused functions
Originally committed to SVN as r6611.
2012-03-27 00:49:05 +00:00
Thomas Goyne
7f427e01df Fix completely wrong results from the Kanji timer
Durations were being set in milliseconds rather than centiseconds.

Originally committed to SVN as r6610.
2012-03-27 00:48:56 +00:00
Thomas Goyne
232bae36e7 Fix crash when the Accept button in the kanji timer is clicked at a time when there's nothing to accept
Originally committed to SVN as r6609.
2012-03-27 00:48:47 +00:00
Thomas Goyne
f9e8d89059 Remove some unused stuff in the kanji timer
Originally committed to SVN as r6608.
2012-03-27 00:48:38 +00:00
Thomas Goyne
2ef193e197 Remove pointless translatable strings that are never actually displayed
Originally committed to SVN as r6607.
2012-03-27 00:48:28 +00:00
Thomas Goyne
52b1a74f12 Remove todo comment from DirectSoundPlayer, as the player was rewritten entirely instead (years ago)
Originally committed to SVN as r6606.
2012-03-25 04:05:51 +00:00
Thomas Goyne
7218c04d52 Kill AudioPlayer::displayTimer
The rewritten audio display does not use displayTimer and that
functionality shouldn't have been in the players in the first place.

Originally committed to SVN as r6605.
2012-03-25 04:05:44 +00:00
Thomas Goyne
2840fc0aea Replace most remaining uses of std::auto_ptr with agi::scoped_ptr
Originally committed to SVN as r6604.
2012-03-25 04:05:38 +00:00
Thomas Goyne
55f9ccc18d Remove AudioPlayer::GetProvider()
There's really no reason why anything should ever be getting the audio
provider from an audio player.

Originally committed to SVN as r6603.
2012-03-25 04:05:31 +00:00
Thomas Goyne
e120bec4f0 Clean up AegisubLocale a bit
Don't let the user cancel the language selection dialog on first
startup, and don't bother with the dialog at all if there's only one
language available.

Originally committed to SVN as r6602.
2012-03-25 04:05:25 +00:00
Thomas Goyne
0b9a21bf82 Hide SinkMessage's copy constructor and assignment operator
Originally committed to SVN as r6601.
2012-03-25 04:05:20 +00:00
Thomas Goyne
b32515da80 Strip trailing whitespace from all cpp and h files
Originally committed to SVN as r6600.
2012-03-25 04:05:06 +00:00
Thomas Goyne
1077b9b5c4 Rewrite the Resample Resolution dialog
Use more appropriate controls rather than a pile of text ctrls and some
not-entirely-correct validation of the values.

Split apart the dialog and the actual resampling logic.

Originally committed to SVN as r6599.
2012-03-25 04:04:59 +00:00
Thomas Goyne
6f167e9293 Add functions for converting between SSA and ASS aligns to AssStyle
Originally committed to SVN as r6598.
2012-03-25 04:04:54 +00:00
Thomas Goyne
2036712acb Don't display an error when the user cancels an export
Originally committed to SVN as r6597.
2012-03-25 04:04:48 +00:00
Thomas Goyne
ae5d6edaed End the batch if the Paste Over dialog is cancelled rather than horribly breaking everything
Originally committed to SVN as r6596.
2012-03-25 04:04:42 +00:00
Thomas Goyne
ddc70bcd9c Add Paste Over to the default grid context menu
Originally committed to SVN as r6595.
2012-03-23 21:47:55 +00:00
Thomas Goyne
a815d35f51 Unswap preserve and estimate times when splitting lines at the cursor
Originally committed to SVN as r6594.
2012-03-23 03:45:35 +00:00
Thomas Goyne
73e81c3dca Rewrite the overscan mask logic so that it works with blackbarred detached video
Originally committed to SVN as r6593.
2012-03-20 00:39:42 +00:00
Thomas Goyne
d86d56d816 Move bicubic point interpolation logic to SplineCurve
Originally committed to SVN as r6592.
2012-03-20 00:39:33 +00:00
Thomas Goyne
ca76c5cf21 Delete some declarations for nonexistent methods
Originally committed to SVN as r6591.
2012-03-20 00:39:25 +00:00
Thomas Goyne
75ae053958 Make some stuff const
Originally committed to SVN as r6590.
2012-03-20 00:39:10 +00:00
Thomas Goyne
36d962931d Eliminate overly-early rounding that resulted in the waveform renderer being significantly wrong at some zoom levels
Originally committed to SVN as r6589.
2012-03-18 18:41:48 +00:00
Thomas Goyne
4d2623bc2a Really fix crash when switching lines with the drag visual tool active
Originally committed to SVN as r6588.
2012-03-15 00:25:54 +00:00
Thomas Goyne
cbf9ee463e Remove export_clean_info.h/cpp from the vcproj
Originally committed to SVN as r6587.
2012-03-12 23:39:51 +00:00
Thomas Goyne
9f43f9f041 Rewrite the Clean Script Info export filter in lua
This makes it easy to make it a macro in addition to an export filter,
and simplifies the implementation.

Originally committed to SVN as r6586.
2012-03-12 23:35:56 +00:00
Thomas Goyne
2fa054b48b Extract strings from the lua scripts for translation
Originally committed to SVN as r6585.
2012-03-12 23:35:47 +00:00
Thomas Goyne
f4c1fb441e Mark the names and descriptions of included lua macros as translatable
Originally committed to SVN as r6584.
2012-03-12 23:35:37 +00:00
Thomas Goyne
55eb230ef6 Add aegisub.gettext to get translations of strings
Originally committed to SVN as r6583.
2012-03-12 23:35:29 +00:00
Thomas Goyne
f66c772130 Ensure the hotkey descriptions in the translation and styling assistants actually get marked as translatable
Originally committed to SVN as r6582.
2012-03-12 23:35:20 +00:00
Thomas Goyne
4153bbc10b Fix pointlessly different strings in the translation and styling assistant
Originally committed to SVN as r6581.
2012-03-12 23:35:11 +00:00
Thomas Goyne
212013ccdf Add Delete line to the hotkeys listed in the translation assistant
Originally committed to SVN as r6580.
2012-03-12 23:35:03 +00:00
Thomas Goyne
d0150d6b6d Handle external changes in the translation assisant
As all program hotkeys are now allowed while the translation assistant
is active, it can no longer assume that it's the only thing modifying
the file.

Originally committed to SVN as r6579.
2012-03-12 23:34:54 +00:00
Thomas Goyne
7e5b241260 Use SubsTextEditCtrl in the translation assistant
This gives spellchecking and thesaurus support for the translation (and
syntax highlighting, but that usually won't be useful).

Originally committed to SVN as r6578.
2012-03-12 23:34:45 +00:00
Thomas Goyne
de9cc755d2 Stop key event propagation when checking for hotkeys to avoid checking keypresses that aren't hotkeys several times
Originally committed to SVN as r6577.
2012-03-12 23:34:34 +00:00
Thomas Goyne
14274a7672 Forward Cut/Copy/Paste to all text areas, not just the main subs edit box
Originally committed to SVN as r6576.
2012-03-12 23:34:25 +00:00
Thomas Goyne
42b1d4d4eb Fix some misleading variable shadowing
Originally committed to SVN as r6575.
2012-03-12 23:34:16 +00:00
Thomas Goyne
29fcf9de44 Fix new[]/delete mismatch
Originally committed to SVN as r6574.
2012-03-12 23:34:05 +00:00
Thomas Goyne
4a151ca995 Set all selected lines on clicks in dialogue mode rather than just the active line
Originally committed to SVN as r6573.
2012-03-12 00:07:33 +00:00
Thomas Goyne
dcffc3fd38 Show all selected lines in the audio display in dialogue mode
Originally committed to SVN as r6572.
2012-03-12 00:07:27 +00:00
Thomas Goyne
a48190871b In karaoke mode use the Selected style for the portion of the active line not in the active syllable
Originally committed to SVN as r6571.
2012-03-12 00:07:22 +00:00
Thomas Goyne
aba0b5db11 Add support for the Selected style to the audio renderers
Originally committed to SVN as r6570.
2012-03-12 00:07:16 +00:00
Thomas Goyne
812e2e8025 Document a few classes
Originally committed to SVN as r6569.
2012-03-12 00:07:09 +00:00
Thomas Goyne
30d7a18e97 Add missing spaces after colons in error messages
Originally committed to SVN as r6568.
2012-03-11 23:51:10 +00:00
Thomas Goyne
175443d7a6 Fix int overflow in DAR calculation
Originally committed to SVN as r6567.
2012-03-11 23:51:04 +00:00
Thomas Goyne
77e755d109 Allow duplicated timestamps as real files do have them; simply skip all but the last frame with the same timestamp
Originally committed to SVN as r6566.
2012-03-11 23:05:08 +00:00
Thomas Goyne
ebe32890fb Don't scroll to the beginning of the audio when switching to an untimed line
Originally committed to SVN as r6565.
2012-03-11 23:05:02 +00:00
Thomas Goyne
1d4c0c0712 Apply bounds checking to AssTimes generated from strings
Originally committed to SVN as r6564.
2012-03-11 23:04:56 +00:00
Thomas Goyne
43f461e846 Delete the dialog manager before the main frame as having modeless dialogs disappear after the main window is ugly
Originally committed to SVN as r6563.
2012-03-11 23:04:49 +00:00
Thomas Goyne
284eac1c93 Fix check for Darwin in the tests makefile
Originally committed to SVN as r6562.
2012-03-11 23:04:42 +00:00
Thomas Goyne
3e3a853a89 Fix iterator increment after erase in VisualToolDrag
Originally committed to SVN as r6561.
2012-03-10 02:16:38 +00:00
Thomas Goyne
29662749db Fix case-insensitive regular expressions in the Select Lines dialog
Originally committed to SVN as r6560.
2012-03-10 02:16:28 +00:00
Thomas Goyne
12511901a9 Fix bad string concatenation in a json parse error message
Originally committed to SVN as r6559.
2012-03-10 02:16:20 +00:00
Thomas Goyne
759b8433c1 Silence some clang warnings
Originally committed to SVN as r6558.
2012-03-10 02:16:08 +00:00
Thomas Goyne
fed2a91598 Non-precomp header compilation
Originally committed to SVN as r6557.
2012-03-10 02:15:58 +00:00
Thomas Goyne
7f8aecd7fa Use int64_t for progress reporting rather than int as it's what ffms2 requires. Fixes magic jumping progress bars during indexing.
Originally committed to SVN as r6556.
2012-03-10 01:00:13 +00:00
Thomas Goyne
8ec478db36 Make the fonts collector dialog modeless
Originally committed to SVN as r6555.
2012-03-09 00:24:01 +00:00
Thomas Goyne
6b141f2bd3 Fix gcc compilation errors
Originally committed to SVN as r6554.
2012-03-09 00:23:53 +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
41f2f67042 Make the automation manager dialog modeless
Originally committed to SVN as r6552.
2012-03-09 00:23:30 +00:00
Thomas Goyne
931de846ae Ignore \an and \a tags with out of bounds values rather than doing odd things
Originally committed to SVN as r6551.
2012-03-09 00:23:22 +00:00
Thomas Goyne
eea914fa48 Don't select the start handle when a line is selected due to a click on the end handle in the drag visual tool
Originally committed to SVN as r6550.
2012-03-09 00:23:14 +00:00
Thomas Goyne
229daa9874 Update the color of the drag handles in the drag visual tool immediately when the selection changes
Originally committed to SVN as r6549.
2012-03-09 00:23:04 +00:00
Thomas Goyne
d8e0038333 Fix SVN revision check with SVN 1.7 when the aegisub directory is not the top level directory of the working copy. Patch by Larso. Closes #1458.
Originally committed to SVN as r6548.
2012-03-08 05:07:15 +00:00
Thomas Goyne
59447a942d Make the style manager dialog modeless
Originally committed to SVN as r6547.
2012-03-08 04:17:42 +00:00
Thomas Goyne
83faddfdb6 Refactor New/Copy/Edit in the style manager a bit and do a better job of selecting the right style in the lists
Originally committed to SVN as r6546.
2012-03-08 04:17:36 +00:00
Thomas Goyne
b5a71587ff Move more of the style storage management logic to AssStyleStorage
Originally committed to SVN as r6545.
2012-03-08 04:17:29 +00:00
Thomas Goyne
a09d96df1f Make AssStyleStorage keep track of the current catalog name
Originally committed to SVN as r6544.
2012-03-08 04:17:23 +00:00
Thomas Goyne
fa06033762 Ensure that there is always at least one style catalog existing and selected so that the style manager doesn't have to check if there is one
Originally committed to SVN as r6543.
2012-03-08 04:17:17 +00:00
Thomas Goyne
a0b4da90f7 Add commands and menu entries to sort only the selected lines. Closes #1457.
Originally committed to SVN as r6542.
2012-03-07 22:41:12 +00:00
Thomas Goyne
c84c9fe6b8 Fix issues with audio auto scrolling and lines longer than the display
Clicking on the audio display (to change line timing) now never scrolls
the display, rather than jumping around if the line is too long to fit
on the display.

Dragged markers are now always kept visible in the display, even if auto
scroll is off.

Originally committed to SVN as r6541.
2012-03-07 22:41:03 +00:00
Thomas Goyne
9f6bb17379 Fix bug where the Actor box would get incorrectly set to the placeholder text
Originally committed to SVN as r6540.
2012-03-07 22:40:54 +00:00
Thomas Goyne
b64e1f925c Coalesce typing in the Actor box (but not selections from the dropdown)
Originally committed to SVN as r6539.
2012-03-07 22:40:45 +00:00