From 8ec478db361e4a9917917cd668f6d07daa1b8f83 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Fri, 9 Mar 2012 00:24:01 +0000 Subject: [PATCH] Make the fonts collector dialog modeless Originally committed to SVN as r6555. --- aegisub/src/command/tool.cpp | 3 +-- aegisub/src/dialog_fonts_collector.cpp | 9 +++++---- aegisub/src/dialog_fonts_collector.h | 4 +++- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/aegisub/src/command/tool.cpp b/aegisub/src/command/tool.cpp index 31dff9503..570efa301 100644 --- a/aegisub/src/command/tool.cpp +++ b/aegisub/src/command/tool.cpp @@ -101,8 +101,7 @@ struct tool_font_collector : public Command { STR_HELP("Open fonts collector") void operator()(agi::Context *c) { - c->videoController->Stop(); - DialogFontsCollector(c->parent, c->ass).ShowModal(); + c->dialog->Show(c); } }; diff --git a/aegisub/src/dialog_fonts_collector.cpp b/aegisub/src/dialog_fonts_collector.cpp index 5e39513dc..f21444d76 100644 --- a/aegisub/src/dialog_fonts_collector.cpp +++ b/aegisub/src/dialog_fonts_collector.cpp @@ -32,6 +32,7 @@ #include "ass_file.h" #include "compat.h" #include "help_button.h" +#include "include/aegisub/context.h" #include "libresrc/libresrc.h" #include "main.h" #include "scintilla_text_ctrl.h" @@ -179,9 +180,9 @@ public: } }; -DialogFontsCollector::DialogFontsCollector(wxWindow *parent, AssFile *ass) -: wxDialog(parent, -1, _("Fonts Collector")) -, subs(ass) +DialogFontsCollector::DialogFontsCollector(agi::Context *c) +: wxDialog(c->parent, -1, _("Fonts Collector")) +, subs(c->ass) { SetIcon(BitmapToIcon(GETIMAGE(font_collector_button_24))); @@ -194,7 +195,7 @@ DialogFontsCollector::DialogFontsCollector(wxWindow *parent, AssFile *ass) collection_mode = new wxRadioBox(this, -1, "Action", wxDefaultPosition, wxDefaultSize, 4, modes, 1); collection_mode->SetSelection(mid(0, OPT_GET("Tool/Fonts Collector/Action")->GetInt(), 3)); - if (!ass->filename) + if (!subs->filename) collection_mode->Enable(2, false); wxStaticBoxSizer *destination_box = new wxStaticBoxSizer(wxVERTICAL, this, _("Destination")); diff --git a/aegisub/src/dialog_fonts_collector.h b/aegisub/src/dialog_fonts_collector.h index 0b1cf0698..83b70a3da 100644 --- a/aegisub/src/dialog_fonts_collector.h +++ b/aegisub/src/dialog_fonts_collector.h @@ -25,6 +25,8 @@ #include #endif +namespace agi { struct Context; } + class AssFile; class ScintillaTextCtrl; class wxButton; @@ -59,5 +61,5 @@ class DialogFontsCollector : public wxDialog { void OnCollectionComplete(wxThreadEvent &); public: - DialogFontsCollector(wxWindow *parent, AssFile *subs); + DialogFontsCollector(agi::Context *c); };