Thomas Goyne
b94547aa71
Drop format and header lines from the in-memory file representation
...
They're just pointless cruft, so drop them from the file when parsing
and re-add them when saving as ASS or SSA.
2012-11-24 16:24:00 -08:00
Thomas Goyne
bd259b7197
Fix awesome variable shadowing derp
2012-11-20 14:28:57 -08:00
Thomas Goyne
653aa32eb2
Use std::any_of rather than std::find_if() != end()
2012-11-13 05:52:24 -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
0893ed3f0a
Remove references to tr1
2012-11-10 18:05:57 -08:00
Thomas Goyne
b077c0991b
Move the split line at cursor functionality to commands
2012-11-10 18:05:57 -08:00
Thomas Goyne
ea5428b65f
Replace AssColor with agi::Color
...
Add agi::Color, and replace AssColor and all uses of wxColor that are
not immediately passed to/from wx with it.
2012-11-10 18:05:56 -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
df60c2e7a4
Factor out a bunch of duplicated code for clipboard stuff
2012-10-25 17:39:49 -07:00
Thomas Goyne
c7fd04a739
Rename ASS -> Ass in symbol names
...
Most types and functions used Ass, but a decent number used ASS, so make
them consistent.
2012-10-16 09:52:19 -07:00
Thomas Goyne
53433426bb
Fix some stuff from Coverity Scan
...
Mostly just bugs in unreachable code and stylistic things, but there's a
few incorrect reachable things that were working by coincidence and
gratuitous dynamic_casts.
2012-10-15 18:16:09 -07:00
Thomas Goyne
ccafd0be17
Update the selection correctly after setting a tag via the edit box buttons
...
The valid bounds for a selection are not updated until the contents of
the edit box are updated on commit, so set the selection after
committing rather than before.
2012-10-14 20:35:08 -07:00
Thomas Goyne
be94ab70f4
Extract cut/copy/delete lines logic from SubtitlesGrid
2012-10-14 18:57:57 -07:00
Thomas Goyne
610b2a9494
Make pasting lines not horribly slow and bad. Closes #1534 .
2012-10-13 21:32:26 -07:00
Thomas Goyne
7ca2c5cb65
Actually set the correct color tags from the color picker buttons
2012-10-12 14:54:09 -07:00
Thomas Goyne
1b68790c4b
Convert the subs edit box buttons to commands
...
This makes they hotkeyable and extracts a large chunk of logic from the
giant mess that is SubsEditBox.
2012-10-12 14:54:08 -07:00
Thomas Goyne
e4a6092b36
Use signals for selection change notifications
2012-10-12 14:54:07 -07:00
Thomas Goyne
e995cd2616
Don't stop video playback when undoing or redoing changes
2012-09-01 21:45:17 -07:00
Thomas Goyne
06e23b9296
Use SetSelectionAndActive whenever both are set at once
...
I'm not sure if this fixes any current actual problems as using slightly
stale data is normally only a problem when lines are being deleted, but
it's easier to fix it across the board than to figure out where it is
and isn't needed, and the speed impact of batching is trivial.
Originally committed to SVN as r6753.
2012-05-05 02:11:09 +00:00
Thomas Goyne
4231653146
When joining lines, use the maximum of the lines' end times rather than the last line's end time
...
Originally committed to SVN as r6734.
2012-05-01 02:49:53 +00:00
Thomas Goyne
9e3553c199
Join concatenated lines with a space rather than \N
...
Originally committed to SVN as r6733.
2012-05-01 02:49:48 +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
9b69ce7a27
Add support for noncontiguous selections to the duplicate lines commands
...
Originally committed to SVN as r6476.
2012-02-15 22:14:10 +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
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
7e557c1dad
Rename edit/line/swap to grid/swap and grid/swap/* to grid/move/*
...
Continue moving all the reordering commands to grid (why were they in
three different categories?), and change swap to move to better reflect
what they do.
Originally committed to SVN as r6287.
2012-01-13 20:18:57 +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
34a87b1c1e
Silence a pile of /W4 warnings
...
Originally committed to SVN as r6001.
2011-12-22 21:09:31 +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
bf285cfa50
Make the undo/redo strings more localization-friendly. Closes #1104 .
...
Originally committed to SVN as r5869.
2011-11-17 02:19:10 +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
5be401a1de
Rename edit/search_replace to edit/find_replace for consistency
...
Originally committed to SVN as r5701.
2011-09-30 23:51:41 +00:00
Thomas Goyne
c936306593
Rewrite nearly everything related to karaoke
...
Move most karaoke parsing/serializing/editing code to AssKaraoke rather
than being scattered all over the place, and add much better support for
non-karaoke override tags and comments.
Add a karaoke timing controller.
Redesign the karaoke syllable split/join interface to have a single mode
from which both splitting and joining can be done rather than separate
split and join modes.
Only show the karaoke split/join bar when karaoke mode is enabled.
Closes #886 , #987 , #1190 .
Originally committed to SVN as r5613.
2011-09-28 19:44:07 +00:00
Thomas Goyne
d990bbbb99
Eliminate all unnecessary uses of L and _T
...
Originally committed to SVN as r5611.
2011-09-28 19:43:11 +00:00
Thomas Goyne
1f095b0a01
Remove the SubsEditBox from the context in favor of the SubsEditTextCtrl as it was the only public member of SubsEditBox
...
Originally committed to SVN as r5595.
2011-09-15 05:17:07 +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
626df4db05
Rewrite the dynamic menu generation code
...
Remove hardcoded assumptions about where in the menu items are and
instead bind menu items directly to commands so that customizing the
menu actually works.
Add support for user menu files that override the default one.
Add better support for multiple menus so that all of the menus can
potentially be created by the dynamic menu system rather than just the
main menu bar.
Add support for commands whose names change based on the current project
state so that undo and redo can work properly.
Simplify the menu json format and make commands responsible for
controlling what type of menu item is created rather than allowing
nonsensical configurations.
The Automation menu is currently not implemented.
Originally committed to SVN as r5554.
2011-08-27 06:29:36 +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
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
4d924b3f27
Move line joining from SubtitlesGrid to the commands
...
Originally committed to SVN as r5454.
2011-07-15 04:04:48 +00:00
Thomas Goyne
ec3d1a9d35
Don't try to reorder things by swapping entries in a set
...
Originally committed to SVN as r5240.
2011-01-18 06:01:29 +00:00
Thomas Goyne
45c33ab675
Add commands for the remaining subtitles grid hotkeys and remove SubtitlesGrid::OnKeyDown entirely
...
Originally committed to SVN as r5238.
2011-01-18 05:13:26 +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
8544565c0e
Rearrange FrameMain initialization order to seperate context initialization and control creation a bit, and eliminate local pointers to non-view parts of the context
...
Originally committed to SVN as r5209.
2011-01-16 07:16:54 +00:00
Thomas Goyne
583aed4533
Convert commands to structs to eliminate a line of boilerplate per command
...
Originally committed to SVN as r5197.
2011-01-16 07:15:32 +00:00
Thomas Goyne
9779eacbf1
Implement almost all stubbed-out commands other than the MRU ones
...
Originally committed to SVN as r5196.
2011-01-16 07:15:24 +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