Thomas Goyne
a315ce6903
Fix assert failure when opening with no args
2016-02-08 06:59:49 -08:00
Thomas Goyne
28eb475fc2
Actually use the list of filenames in AegisubApp::OpenFiles()
2016-01-10 19:47:26 -08:00
Thomas Goyne
9b815ac8cc
Fix a crash when reattaching video
...
The window close event propagates up to the detached window's parent, so
the handler for the parent window closing needs to filter it out.
2016-01-02 13:48:00 -08:00
Thomas Goyne
ead12de8b6
Actually close all windows on quit
2015-12-21 17:18:07 -08:00
Thomas Goyne
8de8724660
Support creating multiple main windows
...
This is not yet actually exposed in any way in the UI.
2015-12-21 17:17:51 -08:00
Thomas Goyne
57edbafdda
Replace uses of wxThreadEvent with a statically typed event
2015-01-01 10:24:01 -08:00
Thomas Goyne
ef4424f5e2
Eliminate implicit std::string <-> wxString conversions
...
On Windows these don't use UTF-8 and so are broken.
2015-01-01 10:24:00 -08:00
Thomas Goyne
3c59ea9a0a
Remove AegisubApp::HandleEvent
...
OnExceptionInMainLoop covers the same functionality.
2015-01-01 10:24:00 -08:00
Thomas Goyne
13fe4fe9ff
Actually load the platform config rather than the default config twice
2014-06-28 19:49:39 -07:00
Thomas Goyne
7de5fbac92
Eliminate all remaining places where strings are thrown as exceptions
...
Closes #916 .
2014-06-11 12:52:30 -07:00
Thomas Goyne
ce358c1367
Move global_scripts to options.h
...
Not the perfect place for it by any means, but that's where the rest of
the application-global stuff is these days and it removed the need for
automation stuff to include main.h (and thus all the wxApp garbage).
2014-06-06 12:08:41 -07:00
Thomas Goyne
07cf50f7d3
Use non-deprecated wxIMPLEMENT_APP
2014-06-06 12:08:40 -07:00
Thomas Goyne
392c9ea35a
Catch std::exceptions thrown during startup
2014-06-06 12:08:40 -07:00
Thomas Goyne
37c02ae127
Replace wxString::Format with agi::format
...
It's modestly faster, significantly more type-safe, and doesn't assert
when there's too few arguments, which causes problems for plural forms.
Closes #1733 .
2014-05-30 11:53:14 -07:00
Thomas Goyne
8d26c66d0f
Remove a bunch of unused functionalty from agi::Exception
2014-05-30 11:53:14 -07:00
Thomas Goyne
b43788fa7f
Replace boost::format with agi::format
...
boost::format is slow to compile, slow to run, and has an unpleasant
interface.
2014-05-30 08:30:31 -07:00
Thomas Goyne
09e325a1c3
Clean up unused includes
2014-05-23 07:28:24 -07:00
Thomas Goyne
2bf23af00a
Remove a lot of pointless headers for dialogs
...
Most of the dialogs in Aegisub have a public interface consisting of a
single function, so there's really no need to expose the actual dialog
classes to the rest of the program. Add dialogs.h with the declarations
of all of those functions (most of which are just ShowFooDialog()), and
kill a million other headers.
2014-05-22 14:58:39 -07:00
Thomas Goyne
49357eec20
Add missing subs_controller.h include for release builds
2014-05-22 09:54:59 -07:00
Thomas Goyne
19e8f19e52
Redesign project file handling
...
Add a new Project class which is responsible for everything related to
opening and closing audio, video, subtitles, timecodes and keyframes.
This pulls almost everything not directly related to playing audio/video
out of the audio and video controllers, pulls more crap out of
FrameMain, and happens to make things a little simpler in the process.
2014-05-22 09:29:12 -07:00
Thomas Goyne
26cfd3ecbd
Add missing check for if the context has been initialized in the crash handler
2014-05-15 12:07:46 -07:00
Thomas Goyne
79fd39d6ca
Default to the language selected in the installer
2014-05-15 11:09:38 -07:00
Thomas Goyne
eadf555da3
Pass exceptions in async workers back to the main thread
2014-05-09 07:00:48 -07:00
Thomas Goyne
77a2c1bb16
Verify that we're actually using a UTF-8 locale and switch to en_US.UTF-8 if not
...
Should fix #1587 and #1675 , but I was never able to reproduce either of
them so maybe not.
2014-05-06 18:16:36 -07:00
Thomas Goyne
6fc4c8da14
Move make_unique to its own header file
...
Rebuilding the entire project after touching util.h gets old fast.
2014-04-23 15:29:23 -07:00
Thomas Goyne
1d5292fdee
Kill config.h and just force-include acconf.h in non-pch builds
2014-04-16 08:11:37 -07:00
Thomas Goyne
dcf1270fc4
Ensure boost.locale is initialized with a UTF-8 locale on OS X
...
This fixes the find/replace dialog stripping non-us-ascii characters
from the file.
See #1587 for the same issue on Windows.
2014-04-15 16:57:45 -07:00
Thomas Goyne
2ba88537a8
Pull some global init logic out of FrameMain's constructor
2014-03-26 11:33:33 -07:00
Thomas Goyne
c4c0f6f125
Kill VideoContext::Get()
2014-03-26 08:23:43 -07:00
Thomas Goyne
e71270f0f0
Refactor the rest of the factories
2014-03-24 12:40:03 -07:00
Thomas Goyne
53188cca47
Expunge remaining references to <fstream> and <iostream>
2014-03-21 14:31:48 -07:00
Thomas Goyne
d615dcb30a
Replace all uses of strstream and stringstream with bufferstream
...
istringstream makes a copy of its input, which is not very nice for
performance. strstream doesn't do bounds checking, which is not very
nice for safety (and is deprecated).
2014-03-21 13:50:28 -07:00
Thomas Goyne
aab025c830
Write minidumps on windows rather than just basic stack traces
2014-03-20 10:41:12 -07:00
Thomas Goyne
4b6946dcec
Reinitialize the crash error message after the UI language is selected
2014-03-20 10:41:12 -07:00
Thomas Goyne
61b19a17e8
Extract crashlog writing from main.cpp
2014-03-20 10:41:12 -07:00
Thomas Goyne
33a4a056a4
Move everything up a level since the root dir no longer has stuff
2014-03-11 12:14:57 -07:00