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
426e4593c7
Fix a bunch of incorrect implicit wxString <-> std::string conversions
...
The implicit conversion assumes that std::string is encoded in the local
charset, while it's always actually UTF-8.
2012-12-31 07:09:31 -08:00
Thomas Goyne
d0f4d9df99
Replace all uses of lagi_wxString with to_wx
2012-12-22 15:18:38 -08:00
Thomas Goyne
835f7c0f78
Only enable the Remove Word button when the word can be removed. Updates #1184 .
2012-12-21 16:56:26 -08:00
Stjepan Henc
fe630e052b
Add Remove Word button to the spellchecker dialog. Updates #1184 .
2012-12-21 16:56:26 -08:00
Thomas Goyne
4e72fff1d9
Check the right substrings in the spellchecker dialog. Closes #1560 .
2012-12-12 18:08:07 -08:00
Thomas Goyne
d5aae26d83
Use boost::flyweight to intern the wxString members of AssDialogue
...
100 no-op non-amend commits on a subtitle file with 6689 dialogue lines,
with the undo limit set to 100:
Without flyweight:
No video open:
Initial memory usage: 30.6 MB
Final memory usage: 498.0 MB
Elapsed time: 6.3 seconds
Video open, using libass:
Initial memory usage: 54.3 MB
Final memory usage: 653.3 MB
Elapsed time: 23.7 seconds
With flyweight:
No video open:
Initial memory usage: 26.0 MB
Final memory usage: 104.5 MB
Elapsed time: 3.0 seconds
Video open, using libass:
Initial memory usage: 46.7 MB
Final memory usage: 251.8 MB
Elapsed time: 13.0 seconds
No video open:
Memory usage: -79%
Time: -52%
Video open:
Memory usage: -61.5%
Time: -45%
100 no-op amend commits on a line in the middle of a subtitle file with
6689 dialogue lines, with video open:
Without flyweight:
Initial memory usage: 48.2 MB
Final memory usage: 182.3 MB
Elapsed time: 22.3 seconds
With flyweight:
Initial memory usage: 39.8 MB
Final memory usage: 165.8 MB
Elapsed time: 13.8 seconds
Note: The large jump in memory usage here is due to that the benchmark
is blocking the main thread, so at the end there are ~100 video frames
waiting to be displayed.
2012-12-05 18:43:44 -08:00
Thomas Goyne
de4ef14598
Use lambdas for very short event handlers
2012-12-02 13:29:46 -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
1a6caa27b6
Switch to using lambdas in a few places
2012-11-26 07:11:30 -08:00
Thomas Goyne
b055abae44
Fix compliation with gcc 4.7
2012-11-15 18:15:40 -08:00
Thomas Goyne
88fdee726b
Extract word-splitting logic from the syntax highlighter
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
76adcad999
Move the spellchecker base class to libaegisub
2012-11-10 18:05:57 -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
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
e4a6092b36
Use signals for selection change notifications
2012-10-12 14:54:07 -07:00
Thomas Goyne
5eb14a1f7a
Maybe really fix hurr durr gtk. Closes #1474 .
...
Originally committed to SVN as r6903.
2012-06-13 15:58:24 +00:00
Thomas Goyne
427c8406d5
hurr durr gtk. Closes #1474 .
...
Originally committed to SVN as r6875.
2012-05-26 16:54:55 +00:00
Thomas Goyne
c7fb7eb295
Handle modeless dialogs which never fully open
...
Fixes crash when opening the spell checker dialog after no spelling
errors were found previously.
Closes #1491 .
Originally committed to SVN as r6824.
2012-05-18 14:01:56 +00:00
Thomas Goyne
f1b2b4a3da
Don't allow opening multiple copies of the spell checker dialog
...
Originally committed to SVN as r6757.
2012-05-10 14:19:02 +00: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
fe36760872
Use 16x16 icons for dialogs rather than cropping the 24x24 icons to 16x16
...
Originally committed to SVN as r6650.
2012-04-03 20:40:24 +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
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
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
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
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
7998677612
Fix wxGTK assertion failure
...
Originally committed to SVN as r5895.
2011-11-19 05:07:41 +00:00
Thomas Goyne
262d5195c5
Add access keys for nearly all things which support them and were missing them. Closes #1070 .
...
Originally committed to SVN as r5877.
2011-11-18 18:49:09 +00:00
Thomas Goyne
8831de5774
Modify a few strings to ease translations
...
Originally committed to SVN as r5870.
2011-11-17 02:21:46 +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
d70fb7fe2d
Fix compilation errors
...
Originally committed to SVN as r5601.
2011-09-15 06:03:13 +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
584f36a744
Detangle the spellchecker dialog from the subtitles grid, make it modelss, and fix a lot of edges cases
...
Originally committed to SVN as r5591.
2011-09-15 05:16:41 +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
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
bee57ccad3
Make DialogSpellChecker operate on a context rather than going through FrameMain
...
Originally committed to SVN as r5203.
2011-01-16 07:16:13 +00:00
Thomas Goyne
3345797ff6
Use signals in AudioController and AudioTimingController
...
Originally committed to SVN as r4907.
2010-12-08 08:09:16 +00:00
Amar Takhar
c15777f844
Merge audio_display_rewrite branch to trunk. This is not a complete work, don't expect to time anything for a while.
...
Originally committed to SVN as r4903.
2010-12-08 03:36:10 +00:00
Thomas Goyne
6d2b941e76
Rework how committing changes works
...
Rather than everything having to separately commit changes to the ass
and then tell the subs grid to notify various parts of Aegisub about the
changes, committing the AssFile now triggers an event which objects
listen for.
AssFile::Commit now also has an argument to indicate what sorts of
changes were made to the file. For now these types are very broad.
Originally committed to SVN as r4901.
2010-12-07 19:09:28 +00:00
Thomas Goyne
71fb04cd29
Rework most of the various factories to not need an explicit helper class for each class constructable via a factory.
...
Originally committed to SVN as r4716.
2010-08-02 06:31:38 +00:00
Thomas Goyne
fde4a7815d
Make the subtitle edit box auto-commit all changes
...
This happens to fix most of the undo issues, as it's now much harder to
have uncommitted changes to the file.
Closes #355 and #586 .
Originally committed to SVN as r4699.
2010-07-20 03:11:11 +00:00
Thomas Goyne
4a8abae3a3
Kill options.h and options.cpp, which have been empty for a while
...
Originally committed to SVN as r4676.
2010-07-12 21:49:48 +00:00
Thomas Goyne
2e5dc176db
Rewrite Undo/Redo code
...
Make the undo and redo stacks non-static members of AssFile, making it
theoretically possible to have multiple open AssFiles with working undo.
Slightly improve tracking of whether the file is modified: saving,
making a change, then undoing the change now results in the file being
shown as unmodified as with most programs with undo.
Add basic undo coalescing support.
Originally committed to SVN as r4667.
2010-07-09 07:31:34 +00:00
Niels Martin Hansen
c9c2fa6404
Move "active line" responsibility to the grid. There are at the very least a bunch of redraw issues that need to be sorted out, probably much worse things are hiding.
...
Originally committed to SVN as r4604.
2010-06-26 11:32:16 +00:00
Thomas Goyne
faf2e562cd
Rename FrameMain::SubsBox to SubsGrid for consistency with the rest of Aegisub.
...
Originally committed to SVN as r4527.
2010-06-16 06:20:33 +00:00
Amar Takhar
40e12403d5
Merge all changes from the libaegisub branch into trunk, the effective range is r4175:4330. All options have been re-done and now use Cajun to support a json-backed format.
...
Initial support for low-level access and file I/O methods are included as well.
Originally committed to SVN as r4331.
2010-05-21 01:13:36 +00:00