offer to scan for plugins at first start.
This commit is contained in:
parent
762ed5cd18
commit
edce75973c
@ -231,6 +231,7 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir, UIConfi
|
||||
, nsm (0)
|
||||
, _was_dirty (false)
|
||||
, _mixer_on_top (false)
|
||||
, _initial_verbose_plugin_scan (false)
|
||||
, first_time_engine_run (true)
|
||||
, roll_controllable (new TransportControllable ("transport roll", *this, TransportControllable::Roll))
|
||||
, stop_controllable (new TransportControllable ("transport stop", *this, TransportControllable::Stop))
|
||||
@ -917,10 +918,12 @@ ARDOUR_UI::starting ()
|
||||
} else {
|
||||
|
||||
if (brand_new_user) {
|
||||
_initial_verbose_plugin_scan = true;
|
||||
ArdourStartup s;
|
||||
s.present ();
|
||||
main().run();
|
||||
s.hide ();
|
||||
_initial_verbose_plugin_scan = false;
|
||||
switch (s.response ()) {
|
||||
case Gtk::RESPONSE_OK:
|
||||
break;
|
||||
@ -4253,7 +4256,7 @@ ARDOUR_UI::plugin_scan_dialog (std::string type, std::string plugin, bool can_ca
|
||||
}
|
||||
|
||||
const bool cancelled = PluginManager::instance().cancelled();
|
||||
if (type != X_("closeme") && !ui_config->get_show_plugin_scan_window()) {
|
||||
if (type != X_("closeme") && (!ui_config->get_show_plugin_scan_window()) && !_initial_verbose_plugin_scan) {
|
||||
if (cancelled && scan_dlg->is_mapped()) {
|
||||
scan_dlg->hide();
|
||||
gui_idle_handler();
|
||||
|
@ -336,6 +336,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr
|
||||
NSM_Client* nsm;
|
||||
bool _was_dirty;
|
||||
bool _mixer_on_top;
|
||||
bool _initial_verbose_plugin_scan;
|
||||
bool first_time_engine_run;
|
||||
|
||||
void goto_editor_window ();
|
||||
|
@ -37,11 +37,12 @@
|
||||
|
||||
#include "ardour/audioengine.h"
|
||||
#include "ardour/filesystem_paths.h"
|
||||
#include "ardour/filename_extensions.h"
|
||||
#include "ardour/plugin_manager.h"
|
||||
#include "ardour/recent_sessions.h"
|
||||
#include "ardour/session.h"
|
||||
#include "ardour/session_state_utils.h"
|
||||
#include "ardour/template_utils.h"
|
||||
#include "ardour/filename_extensions.h"
|
||||
|
||||
#include "ardour_ui.h"
|
||||
#include "startup.h"
|
||||
@ -344,12 +345,29 @@ ArdourStartup::setup_final_page ()
|
||||
{
|
||||
string msg = string_compose (_("%1 is ready for use"), PROGRAM_NAME);
|
||||
|
||||
final_page.set_markup (string_compose ("<span weight=\"bold\" size=\"large\">%1</span>", msg));
|
||||
final_page.show ();
|
||||
final_page_index = append_page (final_page);
|
||||
set_page_complete (final_page, true);
|
||||
set_page_header_image (final_page, icon_pixbuf);
|
||||
set_page_type (final_page, ASSISTANT_PAGE_CONFIRM);
|
||||
plugin_disco_button.signal_clicked().connect (sigc::mem_fun(*this, &ArdourStartup::discover_plugins));
|
||||
plugin_disco_button.set_label (_("Scan for Plugins"));
|
||||
plugin_disco_button.show ();
|
||||
|
||||
Gtk::Label* final_label = manage (new Label);
|
||||
final_label->set_markup (string_compose ("<span weight=\"bold\" size=\"large\">%1</span>", msg));
|
||||
final_label->show ();
|
||||
|
||||
VBox* vbox = manage (new VBox);
|
||||
vbox->pack_start (*final_label, true, true);
|
||||
vbox->pack_start (plugin_disco_button, true, false);
|
||||
vbox->show ();
|
||||
|
||||
final_page_index = append_page (*vbox);
|
||||
set_page_complete (*vbox, true);
|
||||
set_page_header_image (*vbox, icon_pixbuf);
|
||||
set_page_type (*vbox, ASSISTANT_PAGE_CONFIRM);
|
||||
}
|
||||
|
||||
void
|
||||
ArdourStartup::discover_plugins () {
|
||||
plugin_disco_button.set_sensitive (false);
|
||||
PluginManager::instance().refresh();
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -63,6 +63,7 @@ class ArdourStartup : public Gtk::Assistant {
|
||||
void on_apply ();
|
||||
void on_cancel ();
|
||||
bool on_delete_event (GdkEventAny*);
|
||||
void discover_plugins ();
|
||||
|
||||
static ArdourStartup *the_startup;
|
||||
|
||||
@ -101,7 +102,7 @@ class ArdourStartup : public Gtk::Assistant {
|
||||
/* final page */
|
||||
|
||||
void setup_final_page ();
|
||||
Gtk::Label final_page;
|
||||
Gtk::Button plugin_disco_button;
|
||||
|
||||
/* always there */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user