Commit Graph

723 Commits

Author SHA1 Message Date
Thomas Goyne e120ecc190 Make move/pos toggle modify all selected lines
Originally committed to SVN as r4364.
2010-05-26 07:17:46 +00:00
Thomas Goyne 877eabdce7 Fix selection issues with visual features
Selections in drag mode now follow the following rules:

 * If a line is selected in the grid, at least one visual feature
   corresponding to the line is selected.

 * If a line has any features selected, that line is selected in the
   grid.

In addition, all control points now start out selected in the vector
clip tool, and all tools should no longer discard the current selection
at unpredictable or unintended times.

Updates #513.

Originally committed to SVN as r4363.
2010-05-26 07:17:39 +00:00
Thomas Goyne d2a81d871b Make several methods in BaseGrid static or const and clean up some of the implementations.
Originally committed to SVN as r4362.
2010-05-26 07:17:34 +00:00
Thomas Goyne acc1e93728 Also update origins when setting multiple lines with the drag tool. Updates #513
Originally committed to SVN as r4361.
2010-05-26 07:17:28 +00:00
Thomas Goyne 5283c1527b Add updating multiple lines at once to the cross visual tool and make it only happen if alt is held down in both cross and drag. Updates #513.
Originally committed to SVN as r4360.
2010-05-26 07:17:15 +00:00
Amar Takhar 2d57debd49 Commit the beginings of the Path class to hold the internal representation of paths, this is extremely rough since I have to wait until we can do charset conversion in libaegisub to handle windows paths before going any further.
Originally committed to SVN as r4359.
2010-05-24 17:57:07 +00:00
Grigori Goronzy e9c806d0de Handle libass messages with wxLog* family of functions
Originally committed to SVN as r4357.
2010-05-24 03:41:06 +00:00
Grigori Goronzy 61ab7d1f2c Fix ALSA player compilation. (missing includes)
Originally committed to SVN as r4355.
2010-05-24 01:46:04 +00:00
Thomas Goyne 1e975eee89 Add double-click positioning to drag visual tool.
Sets the last clicked-on feature to the double-clicked spot and applies
the same relative movement to all other selected lines (including ones
not visible on the current frame).

Updates #513.

Originally committed to SVN as r4350.
2010-05-23 08:53:27 +00:00
Thomas Goyne d5df0fd545 Fix incorrect setting of float values in the style editor introduced in 7a29bffb847ce2e2f877ddf773aec4afb821018b
Originally committed to SVN as r4346.
2010-05-23 06:57:54 +00:00
Thomas Goyne 9157465a18 Fix loading video/keyframes/timecodes from the MRU list.
Originally committed to SVN as r4338.
2010-05-21 04:40:38 +00:00
Thomas Goyne 68914197d5 Re-add local config file support for standalone installations.
Originally committed to SVN as r4335.
2010-05-21 03:52:11 +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
Thomas Goyne 23972b10bc Add selection and control of multiple visual features
Make all visual tools support selecting and manipulating multiple visual
features at once, allowing multiple lines to be moved at once, entire
vector clips to be translated, etc. Controls:

  - Left click: Select control clicked control only
  - Ctrl-left click: Add/remove control to selection
  - Drag control (with or without ctrl): Move all selected controls,
    after setting/adding to selection if target is not in the selection
  - Click on no control: Clear selection

Lots of little stuff to fix still.

Updates #513.

Originally committed to SVN as r4322.
2010-05-20 08:55:58 +00:00
Thomas Goyne 8ff2728322 Move all userdata in VisualDraggableFeature not used by VisualTool to subclasses specific to each tool that needs userdata.
Originally committed to SVN as r4321.
2010-05-20 08:55:52 +00:00
Thomas Goyne a282393b47 Template VisualTool on the type of draggable features to use
Originally committed to SVN as r4320.
2010-05-20 08:55:46 +00:00
Thomas Goyne 2ef8302a6d Add boost/shared_pointer.hpp to the precompiled header
Originally committed to SVN as r4319.
2010-05-20 08:55:41 +00:00
Thomas Goyne 40a0c8994a Simplify the VisualTool interface a bit.
Originally committed to SVN as r4318.
2010-05-20 08:55:35 +00:00
Thomas Goyne e023831134 Detangle the visual tools from SubsEditBox a bit by making changes to the file no longer go through the edit box.
Originally committed to SVN as r4317.
2010-05-20 08:55:29 +00:00
Thomas Goyne 34a7d21a42 Kill the redundant VisualToolEvent nonsense and make the drag tool just use OnSubTool like the vector clip mode.
Originally committed to SVN as r4316.
2010-05-20 08:55:23 +00:00
Thomas Goyne 2ec4a97dbb Fix bad coordinate conversion in the clip visual tool
Originally committed to SVN as r4315.
2010-05-20 08:55:18 +00:00
Thomas Goyne 0e527355eb Kill some code that was last uncommented before revision 1000.
Originally committed to SVN as r4314.
2010-05-20 08:55:13 +00:00
Thomas Goyne 519039131f Fix crash in freehand draw mode of the vector clip visual tool
Originally committed to SVN as r4313.
2010-05-20 08:55:08 +00:00
Thomas Goyne 94bffb5b9d Fix compile error in gcc introduced in r4307 (instantiating templates with private inner types is a msvc extension)
Originally committed to SVN as r4311.
2010-05-19 03:24:07 +00:00
Thomas Goyne f4124e373c Add single-axis modes to all visual tools
Make all visual tools only update the most-changed axis whenever shift
is held down. Previously the rotate and scale tools used ctrl for this
and shift for snapping to round values; these have been swapped for
consistency.

Closes #993.

Originally committed to SVN as r4310.
2010-05-19 03:24:01 +00:00
Thomas Goyne 115dacb37e Clean up VisualFeature a bit and make most of OpenGlWrapper's methods const
Originally committed to SVN as r4309.
2010-05-19 03:23:55 +00:00
Thomas Goyne 008d59d71e As we require RTTI anyway, kill AssEntry::GetAsDialogue/Style/Attachment and just use dynamic_cast
Originally committed to SVN as r4308.
2010-05-19 00:44:52 +00:00
Thomas Goyne 2124a1dbd3 Rework how sorting works and add sorting by style
Rather than going through a ton of work to ensure that every AssEvent
has a sensible start time that happens to leave it in the right place
after sorting, simply sort only consecutive blocks of AssDialogues and
leave everything else untouched. Note that this results in different
behavior when there are multiple [Events] sections in a file -- rather
than moving lines between sections and keeping the number of lines per
section constant, each section keeps the lines it had.

As it's now easy to do, also add sorting by style name and end time.

Closes #614.

Originally committed to SVN as r4307.
2010-05-19 00:44:44 +00:00
Thomas Goyne a573b0897b Add "Open Subtitles From Video" menu option. Closes #253.
Originally committed to SVN as r4306.
2010-05-19 00:44:37 +00:00
Thomas Goyne a073d48f26 Make all of the controls in the Style Manager dynamically sized. Results in slightly wider buttons with English and much better sized buttons in other languages. Updates #1101
Originally committed to SVN as r4303.
2010-05-17 19:48:17 +00:00
Thomas Goyne 49abae2698 Fix a merge conflict and some newline issues
Originally committed to SVN as r4290.
2010-05-16 07:06:08 +00:00
Thomas Goyne 2c876e79c3 Make visual tools use only screen coordinates.
Previously the visual typesetting tools and the overlay mask used
several coordinate frames, converting between them in many places in
inconsistent ways.  This elimiates all uses of coordinate frames other
than screen and script, and makes the conversion done in one place, and
only when parsing or serializing ASS.

This fixes:

 - A few minor rounding errors

 - Horrible brokeness when only part of the video frame is being
   displayed, due to higher levels of zoom than fit onscreen or panning
   the video

 - Distortion of the visual typesetting tools when the combination of
   overridden aspect ratio, script resolution, and video resolution did
   not result in square pixels.

 - Resolution-dependence of the visual typesetting tools, which resulted
   in some tools becoming hard to use at zooms outside the range of
   100-200%.

 - Some draggable controls used the mouse's script coordinates,
   resulting in noticable jerky movement at high zoom levels or when
   using strange script resolutions.

Closes #966.

Originally committed to SVN as r4289.
2010-05-16 06:39:11 +00:00
Thomas Goyne 74a9bdeb41 Limit the canvas size to the window's size to avoid things exploding at high zoom levels
Originally committed to SVN as r4288.
2010-05-16 06:39:06 +00:00
Thomas Goyne 94cf2949f1 Make the calculation of black borders in the video display happen on resize rather than on draw.
Originally committed to SVN as r4287.
2010-05-16 06:38:59 +00:00
Thomas Goyne 624df412ea Kill the horrifying PrettyFloat function and just use g instead of f everywhere it was used.
Originally committed to SVN as r4280.
2010-05-13 18:41:46 +00:00
Thomas Goyne 1654f4a102 Remove a redundant (and incorrect) check for if the mouse is over the video
Originally committed to SVN as r4279.
2010-05-13 18:37:51 +00:00
Thomas Goyne 247e756c9b Move doxygen stuff for VideoDisplay to the header and fill in some missing docs.
Originally committed to SVN as r4278.
2010-05-13 18:37:46 +00:00
Thomas Goyne 290353d467 Bump copyright years on video_display.*
Originally committed to SVN as r4277.
2010-05-13 18:37:41 +00:00
Thomas Goyne 5215049c07 Add mouse wheel video zooming
Originally committed to SVN as r4276.
2010-05-13 18:37:35 +00:00
Amar Takhar f002850e17 Fix distfile creation.
Originally committed to SVN as r4260.
2010-05-06 16:05:34 +00:00
Thomas Goyne c7e06e9451 Change the uses of -1 for invalid positions in the visual typesetting tools to INT_MIN, as -1 is sometimes a perfectly valid coordinate
Originally committed to SVN as r4258.
2010-05-01 01:45:16 +00:00
Thomas Goyne 5cbabf2d35 Add an option to only display visual typesetting tools when the mouse is over the video.
Originally committed to SVN as r4257.
2010-05-01 01:45:10 +00:00
Thomas Goyne 61c141a714 Change zoom to an arbitrary percentage rather than an index into a fixed list of allowed zooms
Originally committed to SVN as r4256.
2010-05-01 01:07:05 +00:00
Thomas Goyne 42781c1c62 Make the shift times history display one-based frame numbers when shifting the selection onwards. Updates #1098
Originally committed to SVN as r4255.
2010-05-01 01:07:00 +00:00
Thomas Goyne 7a7b7fb5e9 Add menu options for the tag hiding modes to the view menu. Closes #433
Originally committed to SVN as r4254.
2010-04-30 20:42:07 +00:00
Thomas Goyne 2fea4bb1ba Ensure that after using the select lines dialog, the active line is always one of the selected lines. Updates #1176.
Originally committed to SVN as r4253.
2010-04-30 20:42:01 +00:00
Thomas Goyne ae82498273 Make a few parameters in gl_text const references
Originally committed to SVN as r4252.
2010-04-30 16:15:18 +00:00
Thomas Goyne 47beda4c89 Fix build error introduced in r4250 when not using precompiled headers.
Originally committed to SVN as r4251.
2010-04-30 16:15:12 +00:00
Thomas Goyne c3a986414c Make OpenGLTextTexture use the smallest texture that is large enough to fit the requested glyph rather than always using 256x256
Originally committed to SVN as r4250.
2010-04-30 03:00:19 +00:00
Thomas Goyne 27a159793a (Re)add catch for wchar_t in VideoDisplay::Render as it turns out that some of the stuff it calls still throws strings
Originally committed to SVN as r4249.
2010-04-30 03:00:15 +00:00
Thomas Goyne fd701c67ec Kill supportsGlClampToEdge, which hasn't actually been used for a while
Originally committed to SVN as r4248.
2010-04-30 03:00:09 +00:00
Thomas Goyne b90fdcc111 Make the video display use OpenGL display lists, slightly simplifying the code and reducing the amount of state explicitly tracked.
Originally committed to SVN as r4247.
2010-04-30 03:00:04 +00:00
Thomas Goyne 5f82c5bb02 Make the style manager dialog select the new styles when copying styles between the current script and storage, and fix a few cases where buttons were incorrectly enabled or disabled. Updates #1186.
Originally committed to SVN as r4244.
2010-04-24 21:48:06 +00:00
Thomas Goyne de459275a1 Fix crash when using the drag visual tool on a line with a four-argument move tag. Closes #1002.
Originally committed to SVN as r4239.
2010-04-22 01:09:24 +00:00
Thomas Goyne 792c8ec66e Specifically catch exceptions thrown by the subtitle renderer so that we can give a slightly more useful error message.
Originally committed to SVN as r4238.
2010-04-22 01:09:16 +00:00
Kevin Ollivier 9fcdfebf82 Fix the waf build after the libresrc changes, and also tweak the script to properly handle dependency tracking with the generated files.
Originally committed to SVN as r4173.
2010-03-13 17:50:51 +00:00
Amar Takhar 6a9b0b5589 * Return an std::string
* Be const correct.
 * Use c_str() to ensure null termination.
 * Remove stray , from default_mru.json.

Originally committed to SVN as r4171.
2010-03-06 03:55:27 +00:00
Amar Takhar c3c14b0815 Change how libresrc is built:
* Instead of putting code into the .(c|h) files place it into two new files libresrc.(c|h)
 * Bitmaps now go into bitmaps.(c|h)
 * Default configs into default_config.(c|h)

With this approach we can easily embed any resources by simply calling it with common-respack and not having to do anything else.

Originally committed to SVN as r4169.
2010-03-03 00:44:17 +00:00
Thomas Goyne 0a8a495aea Fix a smattering of memory leaks.
Originally committed to SVN as r4157.
2010-02-25 21:45:39 +00:00
harukalover 41be900efa Fixed a memory leak that occurred whenever the Edit menu was opened due to the Undo/Redo items being replaced with new wxMenuItem's without deleting the previous items (now it just updates the label/enabled status without creating new wxMenuItem's)
Originally committed to SVN as r4139.
2010-02-21 06:09:28 +00:00
Niels Martin Hansen 6a431b9032 Do an additional range check before grabbing a dialogue line by index in BaseGrid. Not doing it makes MSVC debug runtimes spew assertions and whatnot. This shouldn't break anything... I hope it doesn't.
Originally committed to SVN as r4134.
2010-02-21 01:25:15 +00:00
Kevin Ollivier 5cafad1d81 Just call Next/PrevFrame now that the audio playing behavior is implemented inside those methods.
Originally committed to SVN as r4122.
2010-02-17 19:07:37 +00:00
Kevin Ollivier 3a58a48e1a Move the logic to play the audio on stepping through video into video_context so that the VideoSlider's Next/PrevFrame can behave consistently regardless of where they're called from.
Originally committed to SVN as r4121.
2010-02-17 19:04:41 +00:00
Kevin Ollivier 3082838aa1 Add an option to play audio when stepping through video, like some other video players do. Also, add .mov as a file format to load, as it is widely used on Mac and seems to work fine for me with ffmpeg.
Originally committed to SVN as r4120.
2010-02-17 06:24:29 +00:00
Kevin Ollivier 65b09da334 Add missing include.
Originally committed to SVN as r4107.
2010-02-15 03:06:04 +00:00
Thomas Goyne e5416f01dc Fix debug assertion in style manager when "Copy" is clicked with zero styles selected.
Originally committed to SVN as r4105.
2010-02-14 22:44:29 +00:00
Thomas Goyne 429a57ef68 Change the logic for when the style editor asks the user if they wish to update existing lines when renaming a style to be based on whether it is a newly created style rather than whether the style's name starts with "Copy of". Updates #1060.
Originally committed to SVN as r4103.
2010-02-14 22:26:45 +00:00
Thomas Goyne 509f748cfb Make VideoContext::SetVideo explicitly call VideoContext::UpdateDisplays rather than relying on the calling code restoring it to a consistent state. Updates #1159.
Originally committed to SVN as r4101.
2010-02-14 22:02:33 +00:00
Thomas Goyne 621cefe14e Fix compile error on non-windows caused by r4097.
Originally committed to SVN as r4099.
2010-02-14 18:06:56 +00:00
Thomas Goyne 175b2a4648 Rewrite the texture grid positioning code again, fixing several visual defects that showed up in OpenGL 1.1 mode. Updates #1153.
Originally committed to SVN as r4097.
2010-02-14 17:41:41 +00:00
Thomas Goyne c9ba8329ad Change all incorrect uses of __WXDEBUG__ to _DEBUG. __WXDEBUG__ being defined does not necessarily mean that it is a debug build, and by default it is defined in release builds of wx as of 2.9.1.
Originally committed to SVN as r4089.
2010-02-09 04:31:33 +00:00
Niels Martin Hansen 48e321f8ef Juggle a weird control structure to be more regular.
Originally committed to SVN as r4086.
2010-02-05 16:06:37 +00:00
Niels Martin Hansen 6fe0eb96be Define an RAII wrapper for the Win32 HANDLE type and make sure all handles created also get closed in the DSound2 audio player. Updates #1145.
Originally committed to SVN as r4084.
2010-02-05 15:13:11 +00:00
Niels Martin Hansen 702739b32e Doxygen-document DSound2 audio player
Originally committed to SVN as r4083.
2010-02-05 14:51:12 +00:00
Niels Martin Hansen fe65749623 Merge r4081, closes #1126.
Originally committed to SVN as r4082.
2010-02-05 13:22:43 +00:00
Thomas Goyne 7ac273eca0 Fix problems with how VideoDisplay's size was being set resulting in the border being subtracted from the video size and the video always taking up the full width of the box even at very low zoom levels. Updates #1137, #1140.
Originally committed to SVN as r4077.
2010-01-31 18:49:37 +00:00
Grigori Goronzy 08817a3e98 Add missing includes to fix compilation without precompiled headers.
Fixes #1129. Patch by buscher.

Originally committed to SVN as r4076.
2010-01-31 14:55:03 +00:00
Grigori Goronzy ba0cf4463f Delete gcc precompiled headers in distclean.
Originally committed to SVN as r4072.
2010-01-30 16:59:24 +00:00
Grigori Goronzy 5db8abd330 OSS player: convert device name to UTF-8 string.
Originally committed to SVN as r4071.
2010-01-30 15:08:50 +00:00
Thomas Goyne b5064f8fc9 Replace lua's default lua module loader with one which uses our UTF-8-supporting script reader.
Originally committed to SVN as r4060.
2010-01-28 01:13:13 +00:00
Amar Takhar e89e7b4be2 Make dictionary printfs easier to read. (also add one for the thesaurus)
Originally committed to SVN as r4051.
2010-01-26 13:56:56 +00:00
Amar Takhar b822ec6343 Merge translations from 2.1.8.
Originally committed to SVN as r4047.
2010-01-26 13:43:02 +00:00
Amar Takhar 27a1d68ec4 Call OnUnhandledException() only when wxWidgets is compiled with exception handling.
Originally committed to SVN as r4044.
2010-01-26 13:18:53 +00:00
Amar Takhar 0cd4f1225d Merge 3906,r3909,r3910,r3912,r3928,r3931,r3932,r3933,r3935,r3936: merge update checker from 2.1.8, this also needs to be documented for doxygen. closes #1084.
Originally committed to SVN as r4042.
2010-01-26 13:14:05 +00:00
Thomas Goyne 0a12e60a36 Add the Automation include path to lua's module load path.
Originally committed to SVN as r4038.
2010-01-24 19:07:34 +00:00
Thomas Goyne 7ffc3d4080 Move more of the purely OpenGL-related code into VideoOutGL from VideoDisplay and simplify the calculation of the texture grid positions slightly.
Originally committed to SVN as r4037.
2010-01-24 19:05:20 +00:00
Thomas Goyne ba088237d7 Add some documentation for AegisubCSConv and TextFileReader.
Originally committed to SVN as r4036.
2010-01-24 18:56:51 +00:00
Amar Takhar c7d95e5590 Add greg to the about dialog credits.
Originally committed to SVN as r4035.
2010-01-24 02:37:47 +00:00
Amar Takhar f43bff1e97 merge r4003 (options dialogue layout fixes)
Originally committed to SVN as r4021.
2010-01-21 00:28:07 +00:00
Amar Takhar 89e2428dbe merge r3992 (restart-helper fixes)
Originally committed to SVN as r4020.
2010-01-21 00:26:45 +00:00
Amar Takhar 4221919d4f merge r3983,r4002 (more string fixes.)
Originally committed to SVN as r4019.
2010-01-21 00:24:59 +00:00
Amar Takhar 79c1716ccd merge r3982.
Originally committed to SVN as r4017.
2010-01-21 00:01:46 +00:00
Amar Takhar e76cfae9bb Merge r3974: asserts in colour picker dialog.
Originally committed to SVN as r4015.
2010-01-20 22:49:26 +00:00
Niels Martin Hansen f1fa69d528 Merge r3999 to trunk, updates #566.
Also, 4000 GET.

Originally committed to SVN as r4000.
2010-01-19 08:50:40 +00:00
Thomas Goyne 80fdea74e6 Merge r3994 from the 2.1.8 branch. Closes #999.
Originally committed to SVN as r3995.
2010-01-19 01:05:51 +00:00
Grigori Goronzy 8c8f59b5ff Fix ALSA player. Works On My Computer [tm].
Originally committed to SVN as r3990.
2010-01-15 22:58:51 +00:00
Grigori Goronzy 6006fb5bba Redirect mouse events from the color picker dialog to the dropper icon
to make the color dropper work on Unix/GTK. OS X still needs fixes.

Originally committed to SVN as r3975.
2010-01-12 03:19:49 +00:00
Niels Martin Hansen 7e079a3fc2 Merge r3967 from 2.1.8, closes #971.
Originally committed to SVN as r3968.
2010-01-10 16:15:31 +00:00
Niels Martin Hansen 8c036dfc3b Merge r3965 back in trunk. Closes #791.
Originally committed to SVN as r3966.
2010-01-10 16:02:01 +00:00
Thomas Goyne 8657658c70 Fix undefined behavior sometimes resulting in a crash when copying styles to or from storage when the style name already exists. Patch by Paranoja. Closes #1096.
Originally committed to SVN as r3961.
2010-01-07 00:48:27 +00:00