Commit graph

2259 commits

Author SHA1 Message Date
Thomas Goyne
2fdded77fb Add 32x32 versions of the icons for OX X
Originally committed to SVN as r6831.
2012-05-19 15:48:57 +00:00
Thomas Goyne
467f4b0c52 Fix crash when changing hotkeys after detaching video
ToolTipManager's slots can outlive the windows they're for, so use
wxWeakRef to avoid trying to update the tooltip for windows that have
been destroyed.

Originally committed to SVN as r6830.
2012-05-19 03:02:21 +00:00
Thomas Goyne
b6e47f1cc0 Remove unused incldue in subs_edit_box.cpp
Originally committed to SVN as r6829.
2012-05-19 03:02:15 +00:00
Thomas Goyne
dcbe114361 Add version of run.sh that works on OS X
Originally committed to SVN as r6828.
2012-05-19 01:13:11 +00:00
Thomas Goyne
3d512eb422 OS X: Always use 24x24 icons for toolbars attached to frames
32x32 icons really should be used here as they'll get automatically
upscaled to that anyway, but we currently don't have those.

Originally committed to SVN as r6827.
2012-05-19 01:13:05 +00:00
Thomas Goyne
ba40e24326 Attach toolbars to the frame before populating them
Works around a wxOSX-Cocoa bug (http://trac.wxwidgets.org/ticket/13888)
that resulted in items never being added to the toolbar.

Originally committed to SVN as r6826.
2012-05-19 01:13:00 +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
904b5aafe4 Set both the initial and value for font size spin ctrls as well
Originally committed to SVN as r6823.
2012-05-18 05:03:21 +00:00
Thomas Goyne
4f832e4b82 Cast size_ts passed to wxString::Format to ints
Originally committed to SVN as r6822.
2012-05-18 05:03:16 +00:00
Thomas Goyne
21100038f5 Explicitly set the value of the Matches radio box in the Select Lines dialog
On OS X is it not implicitly set to the opposite of the Doesn't Match
radio box as it is on other platforms.

Originally committed to SVN as r6821.
2012-05-18 05:03:11 +00:00
Thomas Goyne
5c10bfa2f3 OS X: Fix crash when opening Find/Replace dialog
Originally committed to SVN as r6820.
2012-05-18 05:03:05 +00:00
Thomas Goyne
2675bbb831 OS X: Adjust some default hotkeys to match the platform standards
Originally committed to SVN as r6819.
2012-05-18 05:03:00 +00:00
Thomas Goyne
2f2e33617a OS X: Rearrange menus a bit to get closer to normal
Originally committed to SVN as r6818.
2012-05-18 05:02:55 +00:00
Thomas Goyne
129edf3f12 OS X: Use Lucida Grande by default
Originally committed to SVN as r6817.
2012-05-18 05:02:50 +00:00
Thomas Goyne
3699a35988 Add OS X-specific default config, hotkey and menu files
Originally committed to SVN as r6816.
2012-05-18 05:02:43 +00:00
Thomas Goyne
33c36a3298 Fix double multiplication by sample rate that resulted in the waveform renderer allocating way more memory than needed
Originally committed to SVN as r6815.
2012-05-18 01:58:35 +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
7ab4f85211 Stop audio undo coalescing when swtiching between lines
Originally committed to SVN as r6811.
2012-05-16 14:23:10 +00:00
Thomas Goyne
c86f553aa7 Handle the menu items that are moved to the application menu on OS X
Originally committed to SVN as r6810.
2012-05-16 04:57:24 +00:00
Thomas Goyne
e51a86195f Don't signal ScriptsChanged in ScriptManager's destructor
Fixes a crash on exit on OS X

Originally committed to SVN as r6809.
2012-05-16 04:57:18 +00:00
Thomas Goyne
7570d2b982 Fix wxString::Format assertion failure when opening the log window
Originally committed to SVN as r6808.
2012-05-16 04:57:12 +00:00
Thomas Goyne
7e8c18492f Fix non-precompiled-header compilation
Originally committed to SVN as r6807.
2012-05-16 04:57:06 +00:00
Thomas Goyne
0efae2fc85 Add ffms2's cflags to preferenes.cpp
Originally committed to SVN as r6806.
2012-05-16 04:56:59 +00:00
Thomas Goyne
e798e517bd Add padding to the sides of the jump to dialog
Originally committed to SVN as r6805.
2012-05-15 14:11:30 +00:00
cantabile
8960e840d2 Vertically center various widgets
Preferences: labels.
Properties dialog: resolution textboxes.
Fonts collector: path textbox.
Resample resolution: resolution spin boxes.
Video details: labels.

Originally committed to SVN as r6804.
2012-05-15 14:07:14 +00:00
cantabile
b8f7d5eb13 Jump To dialog: use correct format specifier in wxString::Format
Avoids an assertion failure.

Originally committed to SVN as r6803.
2012-05-15 14:07:10 +00:00
cantabile
5d9268792f Make the Jump To dialog less silly
- Don't set arbitrary sizes for the labels and textboxes.
- Get rid of the horizontal box sizers because the labels just wouldn't
  center vertically. Use a grid sizer instead.
- Use a wxStdDialogButtonSizer instead of creating the buttons manually.

Originally committed to SVN as r6802.
2012-05-15 14:07:05 +00:00
cantabile
9254ea8ff6 Dummy video dialog: make the OK button the default button of the dialog
Done by imitating the buttons in the timing postprocessor.

Originally committed to SVN as r6801.
2012-05-15 14:07:00 +00:00
cantabile
848ebf4d2d Move two accelerators
SubsEditBox: move accelerator so it doesn't conflict with "Timing" menu.
Dummy video dialog: move accelerator so it doesn't conflict with the
Cancel button.

Originally committed to SVN as r6800.
2012-05-15 14:06:55 +00:00
cantabile
597b92bb7f Silence three gcc warnings ("ambiguous else")
Originally committed to SVN as r6799.
2012-05-15 14:06:49 +00:00
cantabile
68d7677e14 Never focus the comment checkbox (wxGTK only)
The checkbox can be toggled using its accelerator, without needing to
switch focus back to whatever was focused before.

Originally committed to SVN as r6798.
2012-05-15 14:06:44 +00:00
cantabile
1afc3a816f Alsa player: avoid allocating an array of negative size and add some printfs for debugging.
Originally committed to SVN as r6797.
2012-05-15 14:06:39 +00:00
cantabile
9f6d117875 Preferences: give the font and path textboxes a minimum width of 160 px
The default minimum width was too small.

Originally committed to SVN as r6796.
2012-05-15 14:06:34 +00:00
cantabile
c868928817 Preferences, Colors page: make the box sizers expand
This way the Colors page behaves more or less like the other pages.

Originally committed to SVN as r6795.
2012-05-15 14:06:29 +00:00
cantabile
8887f96098 Preferences: rearrange the "Colors" page a bit
Make it look less asymmetrical.

Originally committed to SVN as r6794.
2012-05-15 14:06:24 +00:00
Thomas Goyne
d38e02c031 Always use wxPATH_WIN for wxFileName::GetForbiddenChars
While it's possible to have files with the DOS-only forbidden characters
on other platforms, wx doesn't actually support them very well.

Closes #1489.

Originally committed to SVN as r6792.
2012-05-15 13:40:10 +00:00
Thomas Goyne
ea1dbc3e8c Remove out of date bug workaround
Panel borders no longer make update region coordinates be out of sync
with drawing coordinates.

Originally committed to SVN as r6791.
2012-05-15 13:40:05 +00:00
Thomas Goyne
d31b795e60 Move the logic for Enter in a time edit to SubsEditBox
It doesn't make any sense for the time edits used elsewhere, and it made
Enter in a time edit not close dialogs.

Originally committed to SVN as r6790.
2012-05-15 13:40:00 +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
4940a98e85 Set both the initial and value fields of spin controls in the preferences dialog since wx ports are inconsistent about which is used
Originally committed to SVN as r6788.
2012-05-15 13:39:50 +00:00
Thomas Goyne
5b9ba0205a Always use change_value for setting spin ctrls in the color picker
With wxCocoa the change events from SetValue are processed immediately,
resulting in significant breakage as in some cases multiple spin
controls need to be set at once. Even on other platforms where things
appeared to work due to the change notifications being delayed, they
still didn't do anything useful and slowed updates down slightly.

Originally committed to SVN as r6787.
2012-05-15 13:39:45 +00:00
Thomas Goyne
ad64e8e48a Remove hardcoded widths for the labels in the color picker
This results in the controls being slightly misaligned, but that's not
as bad as truncating the labels.

Originally committed to SVN as r6786.
2012-05-15 13:39:40 +00:00
Thomas Goyne
a97c7fa1f6 Fix infinite loop when changing the color in the color picker on OS X
Originally committed to SVN as r6785.
2012-05-15 13:39:35 +00:00
Thomas Goyne
75305877f0 Set the initial values of the color picker before binding events
Originally committed to SVN as r6784.
2012-05-15 13:39:30 +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
6b21485c0b Add default_config_platform.json to distclean files
Originally committed to SVN as r6775.
2012-05-14 13:21:33 +00:00
Thomas Goyne
0239ab6688 Remove the explicit height from the preferences dialog
The height was too short to fit the contents in some cases, and wasn't
even used on Windows. Patch by cantabile.

Closes #1488.

Originally committed to SVN as r6773.
2012-05-13 00:58:16 +00:00
Thomas Goyne
57e06a6cad Fix error when a dropdown in the preferences dialog has no values
Originally committed to SVN as r6772.
2012-05-13 00:58:11 +00:00
Thomas Goyne
d04bc6d9b4 Don't paint the audio display if it hasn't been fully initialized due to audio not being open
Originally committed to SVN as r6771.
2012-05-13 00:58:06 +00:00
Thomas Goyne
35fa6c47ce Automatically add a "Default" style to the "Default" catalog as 2.1.x did. Patch by cantabile. Closes #1487.
Originally committed to SVN as r6765.
2012-05-13 00:57:34 +00:00
Thomas Goyne
3388281fb7 Fix error when the style catalog directory doesn't exist or is empty
Use wxDir::GetFirst/GetNext rather than wxFileFirstFile since the latter
doesn't have any way to signal that there aren't actually any files to
be found.

Closes #1486.

Originally committed to SVN as r6764.
2012-05-13 00:57:25 +00:00
Thomas Goyne
2addf40b31 Fix typo (204M -> 240M)
Originally committed to SVN as r6763.
2012-05-11 14:42:30 +00:00
Thomas Goyne
bc74dfc33b Update the video matrix tagging scheme
Write the color range and color space used to convert video to RGB to
the YCbCr Matrix field, or None if no non-RGB video was opened. See
http://code.google.com/p/xy-vsfilter/issues/detail?id=91 for related
discussion.

Originally committed to SVN as r6762.
2012-05-11 14:38:44 +00:00
Thomas Goyne
baacea6ab0 Force threads to 1 when opening video via lavf since the ffms2 bug that makes multithreaded decoding sometimes break still hasn't been fixed
Originally committed to SVN as r6761.
2012-05-11 02:58:34 +00:00
Thomas Goyne
c354dc9e30 Fix brokenness in the curve smoothing
Originally committed to SVN as r6760.
2012-05-11 02:47:24 +00:00
Thomas Goyne
a05d469741 Actually do the smoothing when drawing a smoothed freehand shape
Originally committed to SVN as r6759.
2012-05-11 02:47:18 +00:00
Thomas Goyne
c4e36e00a5 Fix compilation with wxGTK trunk
Originally committed to SVN as r6758.
2012-05-10 14:19:07 +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
47fb50d4d3 Fix crash after cancelling the shift times dialog. Closes #1483.
Originally committed to SVN as r6756.
2012-05-10 14:18:54 +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
18f158a364 Rename option "Always show visual tools" to "Only show visual tools when mouse is over video" as the old name said nothing about when they wouldn't be shown.
Originally committed to SVN as r6754.
2012-05-05 02:11:15 +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
f756aa73c1 Add SelectionController::SetSelectionAndActive, which automatically batches the changes to the selection and active line
Originally committed to SVN as r6752.
2012-05-05 02:11:03 +00:00
Thomas Goyne
70abaf75d7 Don't cache the selection in the dialogue timing controller, as getting it isn't very expensive and it was used in a stale state when the active line changed
Originally committed to SVN as r6751.
2012-05-05 02:10:57 +00:00
Thomas Goyne
a15024e052 Trigger a modified event on Enter in a time edit so that selecting several lines and hitting Enter to set them all to the active line's time works
Originally committed to SVN as r6750.
2012-05-04 02:53:14 +00:00
Thomas Goyne
9269c79763 Only clear the selection due to a click on no visual features if there are actually multiple visual features to select
Originally committed to SVN as r6749.
2012-05-04 02:53:09 +00:00
Thomas Goyne
479de87068 Leave the selected range in the audio display unchanged when switching to an untimed line as 2.1.x did
Originally committed to SVN as r6748.
2012-05-04 02:53:03 +00:00
Thomas Goyne
1bd24d837c Allow block selections on the grid with modifier keys held down
Originally committed to SVN as r6747.
2012-05-04 02:52:58 +00:00
Thomas Goyne
213ccccf86 Redesign the logic for scrolling the grid on drags
Update the grid scroll position on mouse up rather than mouse down,
eliminating the need for the logic that made it impossible to do a drag
selection from the top or bottom rows of the grid, and fix some cases
where the grid would scroll in an undesirable direction.

Originally committed to SVN as r6746.
2012-05-04 02:52:52 +00:00
Thomas Goyne
4d7c6b08e0 Leave the current line selected after splitting at cursor rather than selecting the new line
Originally committed to SVN as r6745.
2012-05-03 03:14:11 +00:00
Thomas Goyne
4603a86953 Don't pointless recreate the subs provider when the subs preview is resized
Fixes a bug that made it rather awkward to resize the style editor
dialog with libass, as the libass provider briefly creates a modal
dialog whenever it's created, which would interrupt the drag

Originally committed to SVN as r6744.
2012-05-02 22:42:43 +00:00
Thomas Goyne
63d60b9b1e Save the size of the style editor in addition to the position
Originally committed to SVN as r6743.
2012-05-02 22:42:37 +00:00
Thomas Goyne
5a067f56e4 Add command "time/lead/both" which adds both lead in and out
Originally committed to SVN as r6742.
2012-05-02 22:42:31 +00:00
Thomas Goyne
8f3b027881 Improve the negative-duration-avoiding behavior of the time edit boxes
Save the initial start and end times of lines before adjusting them to
avoid negative line durations, so that if further changes to the edit
boxes make the adjustment unneccesary the original values can be
restored. This Fixes the problem where changing a line visible from
frames 800-900 to 800-901 would actually result in 90-901, due to the
end frame briefly being 90.

Originally committed to SVN as r6741.
2012-05-02 22:42:25 +00:00
Thomas Goyne
252351b7da Don't stop audio playback when switching lines
Originally committed to SVN as r6740.
2012-05-02 22:42:18 +00:00
Thomas Goyne
4be8e3595b Limit the duration of the lines created with Insert (before) and Insert (after) to the default timing length
Originally committed to SVN as r6739.
2012-05-02 00:31:44 +00:00
Thomas Goyne
cb75c42f04 Leave the old audio open when opening new audio fails for any reason
Originally committed to SVN as r6738.
2012-05-02 00:31:38 +00:00
Thomas Goyne
b8212512e7 Work around a bug which made style names in the style editor scrolled to the left far sooner than they needed to be
Originally committed to SVN as r6737.
2012-05-01 02:50:09 +00:00
Thomas Goyne
2ef7ed98c0 Update the audio scroll position at most once every 50ms when dragging markers
Originally committed to SVN as r6736.
2012-05-01 02:50:03 +00:00
Thomas Goyne
1558aa2dad Increase the height of the audio display scrollbar by 50%
Originally committed to SVN as r6735.
2012-05-01 02:49:58 +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
834c2849da Scroll 1/3 of the audio display per mouse wheel click rather than 120 pixels
This is what 2.1.x did (except this actually handles nonstandard wheel
deltas) and is generally far more usable.

Originally committed to SVN as r6732.
2012-05-01 02:49:43 +00:00
Thomas Goyne
1c4bb4a0e2 Split Lead In and Lead Out into separate passes in the TPP
This makes it so that if there is a gap between two lines but not enough
space for both the full lead-in and lead-out to be added, adding lead-in
to the second line will be prioritized over adding lead-out to the first
line, which is usually the desired result.

Originally committed to SVN as r6731.
2012-05-01 02:49:38 +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
2deafdd3a7 Fix race condition on shutdown that could result in the program not completely exiting on Windows
Originally committed to SVN as r6729.
2012-05-01 02:49:26 +00:00
Thomas Goyne
81d1073a97 Move the auto4 script factories to a local non-heap static to reduce memory leak report noise
Originally committed to SVN as r6728.
2012-04-27 19:08:17 +00:00
Thomas Goyne
38e87e2c83 Fix formatting string assertion failure in the search/replace dialog. Closes #1478.
Originally committed to SVN as r6727.
2012-04-27 19:08:09 +00:00
Thomas Goyne
c71734a8a4 Fix the width of the adjacent bias slider in the TPP dialog on wxGTK. Closes #1477.
Originally committed to SVN as r6726.
2012-04-27 19:08:02 +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
Thomas Goyne
40b1fbaa1b Implement audio/play/toggle (default hotkey B)
Originally committed to SVN as r6723.
2012-04-27 19:07:42 +00:00
Thomas Goyne
46a27a4e46 Eliminate excess spacing from CellSkip
Originally committed to SVN as r6722.
2012-04-27 19:07:36 +00:00
Thomas Goyne
b275399fb1 Add option to draw lines at each second in the audio display
Originally committed to SVN as r6721.
2012-04-27 19:07:29 +00:00
Thomas Goyne
8b854283b7 Add audio/commit/default command
This command commits the current line, advances to the next line (even
if Auto Next on Commit is disabled), and resets the next line's time to
the default timing as if the next line was zero-timed. Add a default
hotkey of Shift-G, but don't bother with a toolbar button for now as
demand for this turned out to be fairly low.

Closes #946.

Originally committed to SVN as r6720.
2012-04-27 19:07:21 +00:00
Thomas Goyne
eb26bc51b9 Add commit commands which always stay and always advance regardless of the auto advance setting
Originally committed to SVN as r6719.
2012-04-27 19:07:15 +00:00
Thomas Goyne
99a65974e4 Move the Next Line on Commit logic to the commit command so that other commands can do different things
Originally committed to SVN as r6718.
2012-04-27 19:07:07 +00:00
Thomas Goyne
79282d7b89 Add the header background color to the preferences dialog
Originally committed to SVN as r6717.
2012-04-27 19:06:58 +00:00
Thomas Goyne
e4df8f9654 Reduce the Matroska read-ahead to 1KB
We only read subtitles, which are individually very small and generally
have video frames between them, resulting in most of the 65 KB
previously read being wasted. On an arbitrary test file this speeds up
subtitle reading from a cold cache by ~25%, and ~60% from warm.

Originally committed to SVN as r6716.
2012-04-22 15:31:16 +00:00
Thomas Goyne
b13c72e967 Fix a few places where 32-bit fseek/ftell were used in the Matroska reader code
Originally committed to SVN as r6715.
2012-04-22 15:31:11 +00:00
Thomas Goyne
35241bdbce Fix wxString::Format assertion failure when opening subtitles from Matroska
Originally committed to SVN as r6714.
2012-04-22 15:31:06 +00:00