2014-03-25 22:49:26 +01:00
|
|
|
// Copyright (c) 2014, Thomas Goyne <plorkyeran@aegisub.org>
|
|
|
|
//
|
|
|
|
// Permission to use, copy, modify, and distribute this software for any
|
|
|
|
// purpose with or without fee is hereby granted, provided that the above
|
|
|
|
// copyright notice and this permission notice appear in all copies.
|
|
|
|
//
|
|
|
|
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
|
|
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
|
|
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
|
|
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
|
|
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
|
|
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
|
|
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
|
|
//
|
|
|
|
// Aegisub Project http://www.aegisub.org/
|
|
|
|
|
|
|
|
#include <memory>
|
|
|
|
|
2011-01-16 08:16:48 +01:00
|
|
|
class AssFile;
|
2011-01-05 19:40:37 +01:00
|
|
|
class AudioBox;
|
|
|
|
class AudioController;
|
2011-01-16 08:17:02 +01:00
|
|
|
class AssDialogue;
|
2011-09-28 21:44:07 +02:00
|
|
|
class AudioKaraoke;
|
2012-03-09 01:23:41 +01:00
|
|
|
class DialogManager;
|
2014-03-25 17:51:38 +01:00
|
|
|
class FrameMain;
|
2014-05-22 01:23:28 +02:00
|
|
|
class Project;
|
2013-01-11 17:53:36 +01:00
|
|
|
class SearchReplaceEngine;
|
2012-10-12 01:46:53 +02:00
|
|
|
class InitialLineState;
|
2014-03-25 01:15:14 +01:00
|
|
|
class SelectionController;
|
2013-01-26 02:57:46 +01:00
|
|
|
class SubsController;
|
2013-06-19 04:28:11 +02:00
|
|
|
class BaseGrid;
|
2012-10-08 16:32:51 +02:00
|
|
|
class TextSelectionController;
|
2014-05-22 01:23:28 +02:00
|
|
|
class VideoController;
|
2011-11-12 02:23:18 +01:00
|
|
|
class VideoDisplay;
|
2011-01-16 08:16:48 +01:00
|
|
|
class wxWindow;
|
|
|
|
namespace Automation4 { class ScriptManager; }
|
Merge the dynamic menu, hotkey and toolbar branch to trunk. This doesn't include Windows support as vs2008 was being a major pain. This involves revisions r4921:4950, r4961:5002, r5005:5006, r5008:5056, r5062:5065, r5072, r5081:5082, r5087, r5096:5110, r5124:5125. Updates #1258.
Originally committed to SVN as r5126.
2011-01-05 14:00:46 +01:00
|
|
|
|
|
|
|
namespace agi {
|
2015-08-22 03:17:48 +02:00
|
|
|
class Path;
|
Merge the dynamic menu, hotkey and toolbar branch to trunk. This doesn't include Windows support as vs2008 was being a major pain. This involves revisions r4921:4950, r4961:5002, r5005:5006, r5008:5056, r5062:5065, r5072, r5081:5082, r5087, r5096:5110, r5124:5125. Updates #1258.
Originally committed to SVN as r5126.
2011-01-05 14:00:46 +01:00
|
|
|
|
|
|
|
struct Context {
|
2014-03-25 22:49:26 +01:00
|
|
|
// Note: order here matters quite a bit, as things need to be set up and
|
|
|
|
// torn down in the correct order
|
|
|
|
std::unique_ptr<AssFile> ass;
|
2014-04-17 03:27:54 +02:00
|
|
|
std::unique_ptr<TextSelectionController> textSelectionController;
|
2014-03-25 22:49:26 +01:00
|
|
|
std::unique_ptr<SubsController> subsController;
|
2014-05-22 01:23:28 +02:00
|
|
|
std::unique_ptr<Project> project;
|
2014-03-25 22:49:26 +01:00
|
|
|
std::unique_ptr<Automation4::ScriptManager> local_scripts;
|
|
|
|
std::unique_ptr<SelectionController> selectionController;
|
2014-05-22 01:23:28 +02:00
|
|
|
std::unique_ptr<VideoController> videoController;
|
|
|
|
std::unique_ptr<AudioController> audioController;
|
2014-03-25 22:49:26 +01:00
|
|
|
std::unique_ptr<InitialLineState> initialLineState;
|
|
|
|
std::unique_ptr<SearchReplaceEngine> search;
|
2015-08-22 03:17:48 +02:00
|
|
|
std::unique_ptr<Path> path;
|
2013-01-11 17:53:36 +01:00
|
|
|
|
2011-01-16 08:16:48 +01:00
|
|
|
// Things that should probably be in some sort of UI-context-model
|
2014-03-25 22:49:26 +01:00
|
|
|
wxWindow *parent = nullptr;
|
|
|
|
wxWindow *previousFocus = nullptr;
|
|
|
|
wxWindow *videoSlider = nullptr;
|
Merge the dynamic menu, hotkey and toolbar branch to trunk. This doesn't include Windows support as vs2008 was being a major pain. This involves revisions r4921:4950, r4961:5002, r5005:5006, r5008:5056, r5062:5065, r5072, r5081:5082, r5087, r5096:5110, r5124:5125. Updates #1258.
Originally committed to SVN as r5126.
2011-01-05 14:00:46 +01:00
|
|
|
|
2011-01-16 08:16:48 +01:00
|
|
|
// Views (i.e. things that should eventually not be here at all)
|
2014-03-25 22:49:26 +01:00
|
|
|
AudioBox *audioBox = nullptr;
|
|
|
|
AudioKaraoke *karaoke = nullptr;
|
|
|
|
BaseGrid *subsGrid = nullptr;
|
|
|
|
std::unique_ptr<DialogManager> dialog;
|
|
|
|
FrameMain *frame = nullptr;
|
|
|
|
VideoDisplay *videoDisplay = nullptr;
|
|
|
|
|
|
|
|
Context();
|
|
|
|
~Context();
|
Merge the dynamic menu, hotkey and toolbar branch to trunk. This doesn't include Windows support as vs2008 was being a major pain. This involves revisions r4921:4950, r4961:5002, r5005:5006, r5008:5056, r5062:5065, r5072, r5081:5082, r5087, r5096:5110, r5124:5125. Updates #1258.
Originally committed to SVN as r5126.
2011-01-05 14:00:46 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|