Commit graph

91 commits

Author SHA1 Message Date
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
36a102e558 Improve error reporting when an error occurs during startup
Originally committed to SVN as r4820.
2010-10-20 00:28:37 +00:00
Amar Takhar
d3fca38ee7 Disable installing the assert handler until I find time to figure out how I can call the default handler which provides the popup / some handy debug tools.
Originally committed to SVN as r4787.
2010-09-15 05:19:01 +00:00
Amar Takhar
6f63041156 Redirect assertions to the logging system. This doesn't create a popup dialogue like the default method does. If someone actually wants that to happen let me know and I'll write something.
Originally committed to SVN as r4780.
2010-09-14 22:05:19 +00:00
Thomas Goyne
f37e1bf87a Fix thread warnings on shutdown on unix
Originally committed to SVN as r4766.
2010-08-27 01:01:35 +00:00
Thomas Goyne
459b9e317d Display an error when the config file is corrupted rather than just crashing
Originally committed to SVN as r4751.
2010-08-25 19:31:11 +00:00
Amar Takhar
d3077c3b8b Change emit_stdout to a private member variable, this was changed in r4575. Putting it on the stack won't work since it'll just unsubscribe which we don't want. Unfortunatly this is wrapped with _DEBUG everywhere in main.(h|cpp) if we need more debugging code in the future I'll figure out a better solution.
Originally committed to SVN as r4712.
2010-07-25 17:33:44 +00:00
Thomas Goyne
acba2c6b63 Rewrite VFR handling in Aegisub.
Kill vfr.h and vfr.cpp and use the libaegisub versions of them instead.

Rather than the globals VFR_Input and VFR_Output, everything related to
frame rate is now part of the video context. Most things which used to
use VFR_Output now call VideoContext::TimeAtFrame etc.; video providers,
rather than modifying VFR_Input directly, now have getters for their
frame rates which VideoContext calls. Read-only public access to
VFR_Input and VFR_Output are still provided (hopefully temporarily) for
a few things which were awkward to do through VideoContext.

The Avisynth provider now might correctly handle VFR MKVs which can be
opened with DirectShowSource but not DSS2.

Rework keyframe handling as well, so that it continues to match the vfr
handling in design and implementation.

Originally committed to SVN as r4662.
2010-07-08 04:29:04 +00:00
Niels Martin Hansen
3589353641 Add some real exception catching to our wxApp class, now we should be able to get decent messages from all exceptions thrown inside event handlers.
Originally committed to SVN as r4639.
2010-06-29 10:31:15 +00:00
Thomas Goyne
2b47f34e76 Fix a pile of actual memory leaks
Originally committed to SVN as r4575.
2010-06-24 01:24:09 +00:00
Thomas Goyne
363198b2fa Add missing config:: in windows-specific code and move appname setting back before config file loading
Originally committed to SVN as r4549.
2010-06-18 07:23:17 +00:00
Amar Takhar
8ee9737b6f Move mru,opt objects out of the main singleton and into a global config:: namespace. With exception of the log object these are initialised during startup to ensure they are initalised after the log object.
Originally committed to SVN as r4538.
2010-06-18 02:23:27 +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
Thomas Goyne
b6d29443a3 Move most character set conversion code to libaegisub and make everything use the new conversion functionality.
Originally committed to SVN as r4423.
2010-06-03 20:32:25 +00:00
Amar Takhar
d295ce7b0a Convert a bunch of wxLog* to the new logging method.
Originally committed to SVN as r4399.
2010-06-01 08:21:30 +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
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
Niels Martin Hansen
129585a2f8 Remove the ability for Aegisub to do its own file type associations. It's something the installer should be doing.
Originally committed to SVN as r3757.
2009-11-03 02:42:19 +00:00
Amar Takhar
d348b4e33e Fix all the headers in *.cpp, this includes:
* Wrapping all headers that are in agi_pre.h with AGI_PRE.
 * Sorting alphabetically.

Originally committed to SVN as r3515.
2009-09-10 13:06:40 +00:00
Amar Takhar
7a8c5229fd * Remove wxprec.h from all files other than agi_pre.h. Including this in various headers is useless as it includes wx.h which includes dozens of 'common' wx headers. With this we're unable to tell which files rely on which interfaces. This commit removes them and manually places in required headers as-needed.
* Update agi_pre.h to include some missing headers, also move required windowsheaders to the top of the list
 * Use <> versus "" for the wx header in avisynth_wrap.cpp
 * Remove xx/wx.h from agi_pre.h as it's included by wxprec.h.

Originally committed to SVN as r3513.
2009-09-10 10:26:50 +00:00
Amar Takhar
05ae13a8ab * Rename stdwx.h to agi_pre.h as it doesn't include wx headers only, it's confusing.
* Rename include guard to AGI_PRE.

Originally committed to SVN as r3509.
2009-09-10 04:14:28 +00:00
Amar Takhar
d519f4589d * Remove main.h from files that don't require it.
* Remove include guard in main.h as it's no longer required.
 * Sort wx headers and wrap with #ifndef WX_PRE.
 * Add #define WX_PRE to stdwx.h.

Originally committed to SVN as r3502.
2009-09-10 02:07:55 +00:00
Amar Takhar
0992a68488 Rewrite how wxStackWalker works:
* Change from fstream to wxFile.
 * Create both text-based and xml based reports (for the reporter)

Originally committed to SVN as r3499.
2009-09-09 07:04:10 +00:00
Amar Takhar
53b3f8468c Remove old MacRegisterDefaultTypeAndCreator that no longer wxist in wxCocoa. Add a note about how this is handled on unix and a todo item for fixing this on OSX.
Originally committed to SVN as r3487.
2009-09-05 03:56:45 +00:00
Amar Takhar
1155d1bcf8 wxUSE_STACKWALKER is defined to 0/1, so #ifdef doesn't work. (noticed by plork)
Originally committed to SVN as r3474.
2009-09-03 06:03:38 +00:00
Amar Takhar
78b0765608 Vastly simplify saving of backup .ass files when crashing.
* Remove "Autorecovery path" option, this should not be user configurable.
 * Crashes are now saved as recovered/YYYY-MM-DD-HHMMSS_<name>.ass (no pruning)

Originally committed to SVN as r3472.
2009-09-03 05:27:11 +00:00
Amar Takhar
01df6ba169 Remove the dual exception messages and strip it down to 1 short one, removing all references to crashlog.txt.
Originally committed to SVN as r3471.
2009-09-02 20:46:15 +00:00
Amar Takhar
aef7375ddb * Add a new define WITH_EXCEPTIONS to allow exception handling to be forced on when in debug mode.
* Add --enable-debug-exceptions to set WITH_EXCEPTIONS.
 * Fix precompiled header msg using AC_RESULT. (forgot this in the original patch)

Originally committed to SVN as r3451.
2009-09-02 07:59:17 +00:00
Amar Takhar
6ee2f98349 Note: This was done using a script! it's far from perfect but 95% of the work has been done already formatting-wise.
Document all functions, class, struct, union, enum, macro, variable, typedefs.  This isn't the actual document in itself but empty documentation using any old documentation if it was there.

This was done using exuberant ctags to get tag info, then a TCL script to parse/remove old comments and convert them into Doxygen-style.

Some notes:
 * Anything labeled 'DOCME' needs to be documented, @param and @return have been left blank as it would be annoying to delete the 'DOCME' from every one of those.
 * Some multiline comments may have been munged into single line comments
 * Leave the /// comments above global variables with a space, if they're harder to read then we'll be less likey to use them.
 * Enum comments can go after the enumeration itself '[value] /// comment'
 * include/aegisub/*.h haven't been converted yet, this will be done in a later commit
 * Some documentation blocks are in the wrong place, in the .h when it should be in the .cpp, or vice versa.

See http://devel.aegisub.org/wiki/Doxygen for some details on Doxygen and a 'style guide'.

Originally committed to SVN as r3312.
2009-07-29 22:59:22 +00:00
Amar Takhar
12aa34088a Switch all headers to using Doxygen and cleanup contact info
* Swap old email + website address with 'Aegisub Project http://www.aegisub.org/'
 * Set categories for all files (jfs)
 * Add descriptions for each file (jfs)
 * Add $Id$ keyword

Originally committed to SVN as r3310.
2009-07-29 05:43:02 +00:00
harukalover
072520bf5f Removed most of the wxWidgets 2.8 compatibility code
Originally committed to SVN as r3280.
2009-07-25 18:45:30 +00:00
Thomas Goyne
0ea2c53c1a Replaced most wx-based charset conversions with a custom iconv-based conversion. Closes #639, #666, #837, #849 and #877.
Originally committed to SVN as r3137.
2009-07-14 21:28:49 +00:00
Niels Martin Hansen
26c9dd2ce6 More cleanup of local config:
* Remove option from Options dialogue, it's an install-time thing really
 * Don't try to do file associations at startup if we're portable
 * General clean up of config handling code; properly make ?user point to ?data and then everything magically follows, makes a lot of handling cleaner

Originally committed to SVN as r3131.
2009-07-14 04:51:35 +00:00
Niels Martin Hansen
f1c7ed639d Properly fix "local config" option, previously it only made config.dat local and kept everything else in %APPDATA% still. Now fixed, along with a load of other problematic uses of relative paths. Still a lot more to go.
This also makes a bit of sense of the default options for various paths that previously were implicitly relative to ?user or ?data but never explicitly specified in options.

Originally committed to SVN as r3130.
2009-07-14 03:02:17 +00:00
harukalover
b3a69668bf * Fixed an issue with aegisub not trying to open the local config.dat in Windows builds, fixes #902
* Fixed an issue with aegisub failing to start if a local config.dat existed but aegisub did not have permission to write to it

Originally committed to SVN as r3090.
2009-06-30 05:55:03 +00:00
Niels Martin Hansen
ac18b4889b Add super secret WITH_STARTUPLOG define, if enabled it causes insane amounts of message box spam during startup. Currently only implemented on Windows and should be disabled for almost all conceivable purposes.
Originally committed to SVN as r3051.
2009-06-12 16:59:53 +00:00
harukalover
4eeb89710d Fixed compilation support with wxWidgets 2.9.0 (seems to work correctly besides some minor gui issues)
Originally committed to SVN as r3049.
2009-06-11 23:30:33 +00:00
Niels Martin Hansen
390fb2d03c Remove all traces of local configuration support ("portable application") in non-Windows builds. Closes #856.
Originally committed to SVN as r3011.
2009-06-03 23:42:47 +00:00
Amar Takhar
91d73ec8ea SVN Transition Step 3/7
1. cd aegisub/
  2. svn mv *cpp *h src/
  3. svn mv Makefile.am MatroskaParser.c auto4_perldata.inc bitmaps boost \
     changelog.txt config gl include libosxutil libresrc md5.c msvc mythes.cxx \
     mythes.hxx res.rc src/
  4. cd ..
  5. svn mv FFmpegSource2/ INSTALL Makefile.am README  acinclude.m4 \
     autogen.sh automation/ bin build configure.in desktop dummy.txt lib \
     libass/ m4macros/ packages/ po/ scripts/ universalchardet/ aegisub/
  6. mkdir -p docs/wiki_convert
  7. svn add docs/wiki_convert
  8. cd docs
  9. svn mv aegisub_convert_docs.pl convert.bat output wiki_convert/

* See r2749 for full description.

Originally committed to SVN as r2752.
2009-03-08 08:30:39 +00:00
Renamed from aegisub/main.cpp (Browse further)