From 1d237af42ca126527c884a329da06c93fc8712b3 Mon Sep 17 00:00:00 2001 From: Rodrigo Braz Monteiro Date: Sun, 20 Jan 2008 17:34:35 +0000 Subject: [PATCH] Added support for ASSDraw3 (that is, a menu item to launch the program if it's available on the same folder as Aegisub.exe) Originally committed to SVN as r1790. --- aegisub/bitmaps/assdraw3.bmp | Bin 0 -> 1334 bytes aegisub/frame_main.cpp | 20 ++++++++++++++++++++ aegisub/frame_main.h | 3 +++ aegisub/frame_main_events.cpp | 8 ++++++++ aegisub/res.rc | 2 ++ 5 files changed, 33 insertions(+) create mode 100644 aegisub/bitmaps/assdraw3.bmp diff --git a/aegisub/bitmaps/assdraw3.bmp b/aegisub/bitmaps/assdraw3.bmp new file mode 100644 index 0000000000000000000000000000000000000000..845be3be064c18d30e597d430f27a8dc946bd154 GIT binary patch literal 1334 zcmZY7uaeY25XbSR3Mv=JBeX;z!FD03!tewwsN*rVpW$$vX+hxt#h#qjNRW48MB-Qq z!=6AK-|UIZgcpy>e_s><*;0PoNU4*8j!r%xb3Z0h}C=8B3 zqR>Uyq$>=LK%&sagx3_swmJfdLLXC8B@K>1qR_{*O-X|zkSO%=NnA;TBakTc@wq}t zgCmeA^zkWENrNMhDD?4}OG$$xkSO%iFR-qp!4XIlx&-qNQEW4JY-^&>B~+j=I0A`6 zAHU6%G&ll@LLa}>l{7d4i9#R0n}d0m#vW!>(!Ep6q5Wm(tl;$u6mTYoyN+dw6c|J^2YloRAddTool(Menu_Tools_ASSDraw,_T("ASSDraw3"),wxBITMAP(assdraw3),_("Launches ai-chan's \"ASSDraw3\" tool for vector drawing.")); + Toolbar->AddSeparator(); + } Toolbar->AddTool(Menu_Edit_Shift,_("Shift Times"),wxBITMAP(shift_times_toolbutton),_("Open Shift Times Dialogue")); Toolbar->AddTool(Menu_Tools_Styling,_("Styling Assistant"),wxBITMAP(styling_toolbutton),_("Open Styling Assistant")); Toolbar->AddTool(Menu_Tools_Translation,_("Translation Assistant"),wxBITMAP(translation_toolbutton),_("Open Translation Assistant")); @@ -350,6 +354,10 @@ void FrameMain::InitMenu() { AppendBitmapMenuItem (subtitlesMenu,Menu_Tools_Translation, _("&Translation Assistant..."),_("Open translation assistant"), wxBITMAP(translation_toolbutton)); AppendBitmapMenuItem (subtitlesMenu,Menu_Tools_Resample,_("Resample Resolution..."), _("Changes resolution and modifies subtitles to conform to change"), wxBITMAP(resample_toolbutton)); AppendBitmapMenuItem (subtitlesMenu,Menu_Tools_SpellCheck, _("Spe&ll Checker..."),_("Open spell checker"), wxBITMAP(spellcheck_toolbutton)); + if (HasASSDraw()) { + subtitlesMenu->AppendSeparator(); + AppendBitmapMenuItem (subtitlesMenu,Menu_Tools_ASSDraw,_T("ASSDraw3..."),_("Launches ai-chan's \"ASSDraw3\" tool for vector drawing."), wxBITMAP(assdraw3)); + } subtitlesMenu->AppendSeparator(); AppendBitmapMenuItem(InsertMenu,MENU_INSERT_BEFORE,_("&Before Current"),_("Inserts a line before current"),wxBITMAP(blank_button)); AppendBitmapMenuItem(InsertMenu,MENU_INSERT_AFTER,_("&After Current"),_("Inserts a line after current"),wxBITMAP(blank_button)); @@ -1361,3 +1369,15 @@ void FrameMain::SetUndoRedoDesc() { editMenu->SetHelpString(0,_T("Undo ")+AssFile::GetUndoDescription()); editMenu->SetHelpString(1,_T("Redo ")+AssFile::GetRedoDescription()); } + + +///////////////////////////////// +// Check if ASSDraw is available +bool FrameMain::HasASSDraw() { +#ifdef __WINDOWS__ + wxFileName fn(StandardPaths::DecodePath(_T("?data/ASSDraw3.exe"))); + return fn.FileExists(); +#else + return false; +#endif +} diff --git a/aegisub/frame_main.h b/aegisub/frame_main.h index 039030ded..04101742e 100644 --- a/aegisub/frame_main.h +++ b/aegisub/frame_main.h @@ -223,6 +223,7 @@ private: void OnOpenTimingProcessor (wxCommandEvent &event); void OnOpenKanjiTimer (wxCommandEvent &event); void OnOpenVideoDetails (wxCommandEvent &event); + void OnOpenASSDraw (wxCommandEvent &event); void OnOpenOptions (wxCommandEvent &event); void OnOpenLog (wxCommandEvent &event); @@ -289,6 +290,7 @@ public: void SetDisplayMode(int showVid,int showAudio); void SetUndoRedoDesc(); + bool HasASSDraw(); DECLARE_EVENT_TABLE() }; @@ -393,6 +395,7 @@ enum { Menu_Tools_Kanji_Timer, Menu_Tools_Options, Menu_Tools_Log, + Menu_Tools_ASSDraw, Menu_Help_Contents, Menu_Help_IRCChannel, diff --git a/aegisub/frame_main_events.cpp b/aegisub/frame_main_events.cpp index 900eb9fb5..ef85b2bd8 100644 --- a/aegisub/frame_main_events.cpp +++ b/aegisub/frame_main_events.cpp @@ -178,6 +178,7 @@ BEGIN_EVENT_TABLE(FrameMain, wxFrame) EVT_MENU(Menu_Tools_Kanji_Timer, FrameMain::OnOpenKanjiTimer) EVT_MENU(Menu_Tools_Options, FrameMain::OnOpenOptions) EVT_MENU(Menu_Tools_Log, FrameMain::OnOpenLog) + EVT_MENU(Menu_Tools_ASSDraw, FrameMain::OnOpenASSDraw) EVT_MENU(Menu_Subs_Snap_Start_To_Video, FrameMain::OnSnapSubsStartToVid) EVT_MENU(Menu_Subs_Snap_End_To_Video, FrameMain::OnSnapSubsEndToVid) @@ -1033,6 +1034,13 @@ void FrameMain::OnOpenLog (wxCommandEvent &event) { } +////////////////// +// Launch ASSDraw +void FrameMain::OnOpenASSDraw (wxCommandEvent &event) { + wxExecute(StandardPaths::DecodePath(_T("?data/ASSDraw3.exe"))); +} + + /////////////////// // Open Automation void FrameMain::OnOpenAutomation (wxCommandEvent &event) { diff --git a/aegisub/res.rc b/aegisub/res.rc index d1fbca7cb..742a61b58 100644 --- a/aegisub/res.rc +++ b/aegisub/res.rc @@ -167,6 +167,8 @@ eyedropper_cursor CURSOR "bitmaps/eyedropper.cur" splash BITMAP "bitmaps/splash.bmp" +assdraw3 BITMAP "bitmaps/assdraw3.bmp" + // The following define is necessary for Visual Studio #define wxUSE_NO_MANIFEST 1