Thomas Goyne
51a3831794
Remove charset detection from AssFile::Load
...
All of the subtitle formats also already do charset detection when
needed, so doing it in it AssFile::Load is pointless and results in
performing the auto-detection even when it's pointless (because the
format isn't text-based or always uses a single encoding).
Originally committed to SVN as r6459.
2012-02-10 00:04:05 +00:00
Thomas Goyne
e20bc09052
colorspace.(cpp|h) cosmetics
...
Originally committed to SVN as r6458.
2012-02-10 00:03:56 +00:00
Thomas Goyne
16627dbfe7
Clean up DialogVersionCheck a bit
...
Originally committed to SVN as r6457.
2012-02-10 00:03:46 +00:00
Thomas Goyne
de7df882e9
Seek audio to the line on double-click in the grid in addition to video
...
Originally committed to SVN as r6456.
2012-02-07 23:17:26 +00:00
Thomas Goyne
07327c2b65
Add position information to the error message when aegisub.log is called with bad arguments
...
Originally committed to SVN as r6455.
2012-02-07 23:17:06 +00:00
Thomas Goyne
003322813e
Clean up VideoProviderCache a bit
...
Originally committed to SVN as r6454.
2012-02-07 23:16:41 +00:00
Thomas Goyne
1075b71976
Prompt to update uses of the style when "Default" is renamed
...
As far as I can tell, Default was only excluded to avoid prompting when
creating a new style, but whether or not a style is new is now an
explicit parameter to the editor so it's unneeded.
Originally committed to SVN as r6453.
2012-02-07 20:42:44 +00:00
Thomas Goyne
fcffb010b9
Fix check for \i?clip in cleantags. Updates #1450 .
...
Originally committed to SVN as r6452.
2012-02-07 01:23:00 +00:00
Thomas Goyne
26f3bb26ba
Remove some incorrect uses of ellipses
...
Ellipses are used to indicate that a command will require additional
input from the user, not that a dialog will be opened.
Originally committed to SVN as r6451.
2012-02-07 01:22:50 +00:00
Thomas Goyne
b262a07180
Don't mark paths as translatable
...
Originally committed to SVN as r6450.
2012-02-07 01:22:42 +00:00
Thomas Goyne
5e96d6e8c3
Remove periods from single-sentence tooltips
...
Originally committed to SVN as r6449.
2012-02-07 01:22:32 +00:00
Thomas Goyne
38c905d32a
Call Validate before invoking commands via hotkeys
...
Originally committed to SVN as r6448.
2012-02-07 01:22:23 +00:00
Thomas Goyne
51cbc353b3
Fix crashes after reloading automation scripts
...
Originally committed to SVN as r6447.
2012-02-07 01:22:15 +00:00
Thomas Goyne
489d5bbec6
Ignore the Maximize option for dialogs which aren't supposed to be maximizable. Closes #1451 .
...
Originally committed to SVN as r6446.
2012-02-07 01:22:06 +00:00
Thomas Goyne
813f23e762
Check whether the dialog is maximized rather than whether it's not iconized in PersistLocation. Updates #1451 .
...
Originally committed to SVN as r6445.
2012-02-07 01:21:56 +00:00
Thomas Goyne
5a53aa5511
Delete aegisub.h. It's been a few years since it last had anything in it.
...
Originally committed to SVN as r6444.
2012-02-07 01:21:47 +00:00
Thomas Goyne
68c9989c89
Clean up DummyVideoProvider a bit
...
Originally committed to SVN as r6443.
2012-02-07 01:21:37 +00:00
Thomas Goyne
f48ccc0640
Make the version check dialog a bit wider
...
Originally committed to SVN as r6442.
2012-02-03 00:54:09 +00:00
Thomas Goyne
bd38cfc305
Only age the renderer caches when a new block is created
...
Originally committed to SVN as r6441.
2012-02-02 22:58:15 +00:00
Thomas Goyne
fc932dddc7
Convert BlockCache from LFU to LRU
...
In practice there were usually <10 calls to Get per call to Age,
resulting in everything but the most recently used block having an
access count of 0. This resulted in it having essentially random
eviction, which worked decently due to the size of the cache, but with a
significant speed overhead for the LFU tracking.
Originally committed to SVN as r6440.
2012-02-02 22:58:06 +00:00
Thomas Goyne
7ca0ad3233
Repaint the entire audio display when style ranges change
...
In practice, painting audio from the cache isn't all that expensive, so
the limited refreshing was just introducing places for bugs without
improving performance all that much.
Closes #1432 .
Originally committed to SVN as r6439.
2012-02-02 22:57:53 +00:00
Thomas Goyne
ddc8dc9eca
Only wrap the avisynth-using part of AvisynthVideoProvider's constructor with try/catch so that avisynth is still initialized when the catch handler runs, which is required to actually get an error message. Closes #1444 .
...
Originally committed to SVN as r6438.
2012-02-02 20:51:07 +00:00
Thomas Goyne
c5c829357d
Use wxAutoBufferedPaintDC for ToggleButton
...
Originally committed to SVN as r6437.
2012-02-02 20:50:56 +00:00
Thomas Goyne
bd7f338115
Don't copy fonts which appear in styles but are never actually used
...
Originally committed to SVN as r6436.
2012-02-02 19:31:37 +00:00
Thomas Goyne
da61e75f75
Skip inline comments when gathering things to collect fonts for
...
Originally committed to SVN as r6435.
2012-02-02 19:31:27 +00:00
Thomas Goyne
6652ef40e9
Increase the amount of information reported when fonts can't be found
...
List the styles using the font along with lines which use the font via
overrides, and add a warning at the end when some glyphs could not be
found to reduce the chance of the user failing to notice it.
Originally committed to SVN as r6434.
2012-02-02 19:18:40 +00:00
Thomas Goyne
6c365f0e6a
Remove VideoProvider::GetPosition, as it's unused and unneeded
...
Originally committed to SVN as r6433.
2012-02-02 19:18:30 +00:00
Thomas Goyne
6717334c12
Fix crash when trying to seek to keyframes via the video slider with no keyframes loaded, and use wxAutoBufferedPaintDC rather than manual double-buffering
...
Originally committed to SVN as r6432.
2012-02-02 19:18:21 +00:00
Thomas Goyne
b8a7c6cb1e
Remove scoped_ptr::swap
...
Originally committed to SVN as r6431.
2012-02-02 19:18:10 +00:00
Thomas Goyne
d68a7e81b0
Add (optional) overlapping line correction to the timing postprocessor
...
Trying to use this at the same time as adding lead in/out will probably
not have useful results.
Originally committed to SVN as r6430.
2012-02-01 23:59:40 +00:00
Thomas Goyne
eebcf34edb
Don't decode audio URIs stored on the script as it currently always stores the absolute path and the decoding breaks dummy audio URIs
...
Originally committed to SVN as r6429.
2012-02-01 23:59:32 +00:00
Thomas Goyne
3d6e5e7d39
Fix incorrect styling of overlapping inactive lines
...
Originally committed to SVN as r6428.
2012-02-01 23:59:23 +00:00
Thomas Goyne
aaf7285a6e
Remove UI-related responsibilities from AudioController
...
Keeping track of audio markers and labels to be shown in the audio
display is not particularly related to AudioController's primary
responsiblity of controlling the playback of audio.
Originally committed to SVN as r6427.
2012-02-01 23:59:12 +00:00
Thomas Goyne
01b92aa4e3
Change AudioController's public API from samples to milliseconds
...
The sample rate of the currently open audio is not something that things
which do not interact with the raw audio data should have to care about,
or even know about.
Originally committed to SVN as r6426.
2012-02-01 23:58:58 +00:00
Thomas Goyne
bba825ed0d
Clear the error color when an automation script which previously failed to load loads successfully
...
Originally committed to SVN as r6425.
2012-02-01 18:47:47 +00:00
Thomas Goyne
9dbfe5d8e5
Update the visual tool buttons when the active tool is changed via hotkey
...
Originally committed to SVN as r6424.
2012-02-01 18:47:37 +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
2dcd4ff2a6
Mark the style name collision messages as translatable
...
Originally committed to SVN as r6422.
2012-02-01 18:47:18 +00:00
Thomas Goyne
439b1272b0
Select current style when the style manager is opened
...
Originally committed to SVN as r6421.
2012-02-01 18:47:10 +00:00
Thomas Goyne
f0933ecb1a
When adding new hotkeys, automatically select and start editing the new hotkey
...
Originally committed to SVN as r6420.
2012-02-01 18:47:00 +00:00
Thomas Goyne
499a9b2869
Set thread priorty between Create() and Run()
...
Originally committed to SVN as r6419.
2012-02-01 14:23:52 +00:00
Thomas Goyne
fbe00eabe8
Bump up the size of the log window in the font collector dialog so that it can actually fit font names without wrapping
...
Originally committed to SVN as r6418.
2012-02-01 04:17:39 +00:00
Thomas Goyne
db7924d646
Add a warning in the fontconfig font collector when the chosen font does not have glyphs for some of the characters used in that font
...
Originally committed to SVN as r6417.
2012-02-01 04:17:33 +00:00
Thomas Goyne
98b51e2c23
Clean up DialogStyleManager a bit, eliminating a decent amount of duplicated code and fixing issues with the logic for enabling and disabling the buttons.
...
Originally committed to SVN as r6416.
2012-02-01 00:48:50 +00:00
Thomas Goyne
c6ac746215
Kill DialogStyleManager::OnClose as it just does the default thing
...
Originally committed to SVN as r6415.
2012-02-01 00:48:42 +00:00
Thomas Goyne
b48436c5de
Skip unprocessed key events in the style manager
...
Originally committed to SVN as r6414.
2012-02-01 00:48:33 +00:00
Thomas Goyne
3be4693480
Uncrustify AssStyleStorage a bit
...
Originally committed to SVN as r6413.
2012-02-01 00:48:24 +00:00
Thomas Goyne
ac5af24014
Remove pointless #ifdef __APPLE__ around CmdDown()
...
The entire point of CmdDown is that it calls ControlDown on non-OS X, so
the ifdefs are completely pointless.
Originally committed to SVN as r6412.
2012-02-01 00:48:16 +00:00
Thomas Goyne
7bd0691bd7
In PersistLocation get the new location of the dialog directly from the dialog rather than from the event as the data in the event is wrong
...
Originally committed to SVN as r6411.
2012-02-01 00:48:07 +00:00
Thomas Goyne
04cc422391
Close the spell checker after all lines have been checked rather than only once there are no errors remaining. Closes #1442 .
...
Originally committed to SVN as r6410.
2012-02-01 00:47:57 +00:00
Thomas Goyne
3af57cdbcd
Copy the source line's group in AssDialogue's copy constructor as copying wxStrings is far faster than constructing new ones
...
Originally committed to SVN as r6409.
2012-02-01 00:47:49 +00:00
Thomas Goyne
a7d54f3d69
Make AssEntry::group const as it really should never change
...
Originally committed to SVN as r6408.
2012-02-01 00:47:38 +00:00
Thomas Goyne
8bef1eb874
Destruct AssFiles on a background thread as it's rather slow with large files
...
Originally committed to SVN as r6407.
2012-02-01 00:47:28 +00:00
Thomas Goyne
64553dd633
Handle commands which change types at runtime. Closes #1413 .
...
Originally committed to SVN as r6406.
2012-01-31 04:04:02 +00:00
Thomas Goyne
983ffc1e83
Add some dumb heuristics to detect binary files in the charset detector to avoid taking forever feeding hundreds of MB through it. Closes #1438 .
...
Originally committed to SVN as r6405.
2012-01-31 04:03:55 +00:00
Thomas Goyne
d68a395499
Open files in binary mode for charset detection
...
Originally committed to SVN as r6404.
2012-01-31 04:03:50 +00:00
Thomas Goyne
fc96f1bd28
Swallow cancel exceptions thrown from opening audio from the script so that unrelated things aren't canceled
...
Originally committed to SVN as r6403.
2012-01-31 04:03:44 +00:00
Thomas Goyne
f774f21903
Explicitly do nothing when an empty container is passed to delete_clear as it's oddly slow otherwise
...
Originally committed to SVN as r6402.
2012-01-31 00:44:55 +00:00
Thomas Goyne
c2d3c910c7
Replace some uses of "" with wxString()
...
Despite special-casing zero-length input, wxString("") takes over four
times as long as wxString() - and on a 10k line script, this change cuts
AssFile's copy constructor's runtime in half.
Originally committed to SVN as r6401.
2012-01-31 00:44:43 +00:00
Thomas Goyne
3b0d2ae8e6
Add effect and actor to the things that lines can be sorted by
...
Originally committed to SVN as r6400.
2012-01-31 00:44:34 +00:00
Thomas Goyne
a114238396
Use AssTime::GetASSFormated for the video position display
...
Originally committed to SVN as r6399.
2012-01-31 00:44:26 +00:00
Thomas Goyne
725820efc0
Add support for setting the active line from automation macros
...
The macro processing function can now return a second value, which is
the index of the line to make active, which must be one of the lines in
the selection. If it is not, or if the value is not present, then the
active line is left unchanged if it is in the new selection, or set to
the first line of the new selection if it is not.
Closes #1435 .
Originally committed to SVN as r6398.
2012-01-31 00:44:16 +00:00
Thomas Goyne
dad803e956
Set the start and end times of syllables relative to the line's start time rather than time 0 to match 2.1.x's behavior. Closes #1440 .
...
Originally committed to SVN as r6397.
2012-01-31 00:44:07 +00:00
Thomas Goyne
4c4ea92d0f
Update all spellcheckers after adding a word
...
Previously adding a word to the dictionary via the spell checker dialog
would not update the dictionary used by the subs edit box and
vice-versa.
Originally committed to SVN as r6396.
2012-01-31 00:43:59 +00:00
Thomas Goyne
57fc4145d9
Always use the same language for all spellchecker instances as having different languages in different places is weird
...
Originally committed to SVN as r6395.
2012-01-31 00:43:49 +00:00
Thomas Goyne
e205f9d51b
Make the 'Add to dictionary' button in the spellchecker dialog actually do something. Closes #1441 .
...
Originally committed to SVN as r6394.
2012-01-31 00:43:40 +00:00
Thomas Goyne
aa49a4eb0f
Factor out the options lookups from BaseGrid::GetRowStrings so that they aren't pointlessly checked every row
...
Originally committed to SVN as r6393.
2012-01-31 00:43:32 +00:00
Thomas Goyne
1af19fb42e
Make AssTime::GetASSFormated roughly an order of magnitude faster
...
Originally committed to SVN as r6392.
2012-01-31 00:43:23 +00:00
Thomas Goyne
0c972886fb
Cache most of the brushes used in grid painting
...
Originally committed to SVN as r6391.
2012-01-31 00:43:15 +00:00
Thomas Goyne
cf1425f9d1
Don't get the strings for hidden columns when painting the grid. Speeds up grid painting by up to 25%.
...
Originally committed to SVN as r6390.
2012-01-31 00:43:06 +00:00
Thomas Goyne
b34d2c547f
Use wxAutoBufferedPaintDC rather than manual double-buffering in BaseGrid, as it's simpler and slightly faster
...
Originally committed to SVN as r6389.
2012-01-31 00:42:58 +00:00
Thomas Goyne
e5f1719d8f
Use DC clipping in AudioRenderer rather than wxMemoryDC + Blit
...
In addition to being far simpler, this is marginally faster as
wxMemoryDC has a decent amount of overhead.
Originally committed to SVN as r6388.
2012-01-31 00:42:47 +00:00
Thomas Goyne
0bff490b7e
Enable/disable the OK button in the TPP dialog when styles are (un)checked
...
Originally committed to SVN as r6387.
2012-01-27 23:35:31 +00:00
Thomas Goyne
049c730813
Fix handling of autosave and autobackup paths that don't end in a slash
...
Originally committed to SVN as r6386.
2012-01-27 21:32:48 +00:00
Thomas Goyne
e258e8c25f
Fix crash on empty lines in karaoke mode
...
Originally committed to SVN as r6385.
2012-01-27 20:04:31 +00:00
Thomas Goyne
9e3f280cda
Fix bug where opening audio with audio already open would resize the audio display
...
Originally committed to SVN as r6384.
2012-01-27 20:04:22 +00:00
Thomas Goyne
ef4c1b369d
Adjust the label for the history box in the shift times dialog to suggest that old shifts can now be loaded
...
Originally committed to SVN as r6383.
2012-01-27 20:04:14 +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
78f1198426
Fix error when adding a word to the dictionary when the user dictionary file doesn't already exist
...
Originally committed to SVN as r6381.
2012-01-27 20:03:55 +00:00
Thomas Goyne
bc9c521cfd
Apply the 'Subs Edit Box' hotkey handling to all of the text boxes in the subs edit area rather than just the main text edit. Closes #1431 .
...
Originally committed to SVN as r6380.
2012-01-27 19:23:35 +00:00
Thomas Goyne
0dc0135f9a
Select the appropriate entry in the zoom dropdown when the zoom is changed externally so that keyboard navigation works. Updates #1433 .
...
Originally committed to SVN as r6379.
2012-01-27 19:23:26 +00:00
Thomas Goyne
2d5df24fd6
Update the zoom on Enter in the zoom box. Updates #1433 .
...
Originally committed to SVN as r6378.
2012-01-27 19:23:16 +00:00
Thomas Goyne
772c8dee3b
Fix accelerator conflict between Redo and Find and Replace
...
Originally committed to SVN as r6377.
2012-01-27 19:23:07 +00:00
Thomas Goyne
16db1eb4dd
Add more menu accelerators and fix a conflict between View and Video. Patch by catntabile. Closes #1434 .
...
Originally committed to SVN as r6376.
2012-01-27 19:22:57 +00:00
Thomas Goyne
d01c0cf501
Fix crash when drawing a vector clip that does not start with a move. Closes #1430 .
...
Originally committed to SVN as r6375.
2012-01-27 19:22:46 +00:00
Thomas Goyne
4746ae8a1d
Really unhardcode the Paste Over dialog's height rather than just the width
...
Originally committed to SVN as r6374.
2012-01-26 23:23:41 +00:00
Thomas Goyne
a54983a9bc
Fix a few minor issues with the Paste Over dialog
...
Remove the pointlessly hardcoded height of the checklist.
Set the parent correctly.
Set the initial focus to the OK button.
Originally committed to SVN as r6373.
2012-01-26 23:21:19 +00:00
Thomas Goyne
8c246e1cb8
Make shift-scrollwheel scroll the grid a page at a time. Closes #1407 .
...
Originally committed to SVN as r6372.
2012-01-26 22:46:09 +00:00
Thomas Goyne
6d550b4a5d
Repaint the entire grid on timing changes
...
Timing changes can potentially make all of the columns need to be
repainted (due to the collision line color), and the grid currently
isn't smart enough to know when this is actually the case, so just
always repaint the entire thing.
Originally committed to SVN as r6371.
2012-01-26 22:27:57 +00:00
Thomas Goyne
a1ad0fa585
Use Scintilla's logic for deciding when to coalesce edit box changes
...
Scintilla's modification notifications don't expose enough information
to do a very good job of deciding when to group changes with previous
ones, but it does expose when Scintilla thinks undo groups should end,
so just use that.
This should significantly improve the behavior of undo when editing
lines in the edit box.
Originally committed to SVN as r6370.
2012-01-26 22:13:39 +00:00
Thomas Goyne
d55f1622f1
Fix backwards-compatibilty break in the lua karaoke parser
...
Insert an empty syllable at the beginning of the karaoke syllable table
to better mimick 2.1.x's behavior.
Originally committed to SVN as r6369.
2012-01-26 21:19:25 +00:00
Thomas Goyne
0aec0a9d59
Add an option to skip over commented lines in the spell checker. Closes #1428 .
...
Originally committed to SVN as r6368.
2012-01-26 20:51:08 +00:00
Thomas Goyne
92ae4a616e
Fix truncation of all float fields in styles
...
Originally committed to SVN as r6367.
2012-01-26 20:17:31 +00:00
Thomas Goyne
99a7eece9c
Significantly speed up duplicating multiple lines
...
SubtitlesGrid::DuplicateLines iterated over the entire file multiple
times for each line duplicated, making duplicating large numbers of
lines extremely slow.
Originally committed to SVN as r6366.
2012-01-26 20:08:54 +00:00
Thomas Goyne
15a4eca7ce
Fix crash on (auto)save when using CSRI and video is open
...
Calling AssFile::Save/Load from multiple threads (even on different
objects) was not safe due to that is uses SubtitleFormat internally,
which was inheriently thread-unsafe. To fix this, change
SubtitleFormat's interface to support immutable implementations, and
make all of the current implementations immutable.
This isn't a perfect solution - making a subtitle format implemented in
lua immutable would be rather difficult - so at some point in the future
SubtitleFormat should probably be changed to a factory which returns new
objects from GetReader/GetWriter.
Originally committed to SVN as r6365.
2012-01-26 20:08:38 +00:00
Thomas Goyne
d001d66b12
Add support for the scale parameter of vector clips. Closes #1415 .
...
Originally committed to SVN as r6364.
2012-01-26 00:29:08 +00:00
Thomas Goyne
214079af58
Load Shift Times settings from history on double-click
...
Redesign how shift times history is saved. Previously it stored the
localized strings in the history file, which are not particularly
parsable as the format may differ between locales. Rather than doing
this, store the raw settings in a json file, and generate the history
strings on display. In addition to making it much easier to load old
settings, this makes it so that the history is always displayed using
the current locale, rather than the locale in which the shifting was
done.
Closes #1427 .
Originally committed to SVN as r6363.
2012-01-25 23:09:45 +00:00
Thomas Goyne
2094814077
Save the current row and scroll position in the file and restore it when the file is reopened. Closes #1417 .
...
Originally committed to SVN as r6362.
2012-01-25 19:07:36 +00:00
Thomas Goyne
71a4e38c7d
Fix over-escaping that resulted in Recombine Lines stripping 't' rather than tabs. Closes #1418 .
...
Originally committed to SVN as r6361.
2012-01-25 19:07:27 +00:00
Thomas Goyne
a4eb7ef528
Fix crash with empty hotkeys. Closes #1420 .
...
Originally committed to SVN as r6360.
2012-01-25 19:07:18 +00:00