/*************************************************************************/ /* Keyboard Shortcuts */ /*************************************************************************/ protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { switch (keyData) { // Focus on Search Box case Keys.Control | Keys.F: TextBoxSearchQuery.Focus(); return(true); // Show Shortcuts Window case Keys.Control | Keys.OemQuestion: MenuHelpKeyboardShortcuts.PerformClick(); return(true); // Close File Details if open case Keys.Escape: if (FormFileDetails != null) { FormFileDetails.Dispose(); } return(true); // Close application case Keys.Control | Keys.W: Application.Exit(); return(true); } return(base.ProcessCmdKey(ref msg, keyData)); }
/// <summary> /// Show details/info for a WebFile /// </summary> /// <param name="File">WebFile object</param> /// <param name="parentDataGrid">Parent data grid to scroll</param> /// <param name="createNewInstance">Whether to create a new instance</param> public void ShowFileDetails(FtpFile File, DataGridView parentDataGrid, bool createNewInstance = true) { Program.Log.Info("Loading file details : " + File.URL); if (createNewInstance) { FormFileDetails = new FileDetailsWindow(); } FormFileDetails.FileExtension = Path.GetExtension(File.URL).Replace(".", "").ToUpper(); FormFileDetails.ParentDataGrid = parentDataGrid; FormFileDetails.CurrentFile = File; FormFileDetails.LabelFileName.Text = File.Name; FormFileDetails.LabelValueName.Text = File.Name; FormFileDetails.LabelValueSize.Text = StringExtensions.BytesToPrefix(File.Size); FormFileDetails.LabelValueRefferer.Text = new Uri(File.URL).Host; // Builds parts of the URL into a better presented string, simply replaces '/' with '>' and no filename var url = new Uri(File.URL); var directories = new StringBuilder(); directories.Append(new Uri(File.URL).Host); foreach (var path in url.LocalPath.Split('/', '\\')) { if (!Path.HasExtension(path)) { directories.Append(path + "> "); } } FormFileDetails.LabelValueDirectory.Text = directories.ToString(); FormFileDetails.LabelValueExtension.Text = Path.GetExtension(File.URL).Replace(".", "").ToUpper(); FormFileDetails.LabelValueAge.Text = StringExtensions.TimeSpanAge(File.DateModified); FormFileDetails.InfoFileURL.Text = Uri.UnescapeDataString(File.URL); if (!createNewInstance) { FormFileDetails.CheckFileEvents(); } else { FormFileDetails.ShowDialog(this); } FormFileDetails.Text = File.Name + " - File Details"; Program.Log.Info("Completed file details"); }