public bool OnInsertLinkToFile(object arg)
{
CheckDisposed();
RootSiteEditingHelper helper = EditingHelper as RootSiteEditingHelper;
if (helper == null || !helper.CanInsertLinkToFile())
return false;
string pathname = null;
using (var fileDialog = new OpenFileDialogAdapter())
{
fileDialog.Filter = ResourceHelper.FileFilter(FileFilterType.AllFiles);
fileDialog.RestoreDirectory = true;
if (fileDialog.ShowDialog() != DialogResult.OK)
return false;
pathname = fileDialog.FileName;
}
if (string.IsNullOrEmpty(pathname))
return false;
pathname = MoveOrCopyFilesController.MoveCopyOrLeaveExternalFile(pathname,
Cache.LangProject.LinkedFilesRootDir, m_mediator.HelpTopicProvider, Cache.ProjectId.IsLocal);
if (String.IsNullOrEmpty(pathname))
return false;
// JohnT: don't use m_StyleSheet, no guarantee it has been created (see LT-7034)
helper.ConvertSelToLink(pathname, StyleSheet);
return true;
}