mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-16 11:46:25 +01:00
GUI support to re-locate missing external (abs-path) files
This commit is contained in:
parent
cdc8807728
commit
8e1c68eb63
2 changed files with 14 additions and 1 deletions
|
|
@ -35,6 +35,7 @@ using namespace PBD;
|
|||
MissingFileDialog::MissingFileDialog (Session* s, const std::string& path, DataType type)
|
||||
: ArdourDialog (_("Missing File"), true, false)
|
||||
, filetype (type)
|
||||
, is_absolute_path (Glib::path_is_absolute (path))
|
||||
, chooser (_("Select a folder to search"), FILE_CHOOSER_ACTION_SELECT_FOLDER)
|
||||
, use_chosen (_("Add chosen folder to search path, and try again"))
|
||||
, choice_group (use_chosen.get_group())
|
||||
|
|
@ -121,6 +122,12 @@ MissingFileDialog::MissingFileDialog (Session* s, const std::string& path, DataT
|
|||
chooser.set_create_folders (false);
|
||||
}
|
||||
|
||||
void
|
||||
MissingFileDialog::set_absolute ()
|
||||
{
|
||||
_session->set_missing_file_replacement (chooser.get_filename ());
|
||||
}
|
||||
|
||||
void
|
||||
MissingFileDialog::add_chosen ()
|
||||
{
|
||||
|
|
@ -167,7 +174,11 @@ int
|
|||
MissingFileDialog::get_action ()
|
||||
{
|
||||
if (use_chosen.get_active ()) {
|
||||
add_chosen ();
|
||||
if (is_absolute_path) {
|
||||
set_absolute ();
|
||||
} else {
|
||||
add_chosen ();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ public:
|
|||
|
||||
private:
|
||||
ARDOUR::DataType filetype;
|
||||
bool is_absolute_path;
|
||||
|
||||
Gtk::FileChooserButton chooser;
|
||||
Gtk::RadioButton use_chosen;
|
||||
|
|
@ -53,6 +54,7 @@ private:
|
|||
Gtk::Label msg;
|
||||
|
||||
void add_chosen ();
|
||||
void set_absolute ();
|
||||
};
|
||||
|
||||
#endif /* __gtk_ardour_missing_file_dialog_h__ */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue