private void OnClickKeyFileCreate(object sender, EventArgs e) { SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog(KPRes.KeyFileCreate, UrlUtil.StripExtension(UrlUtil.GetFileName(m_ioInfo.Path)) + "." + AppDefs.FileExtension.KeyFile, UIUtil.CreateFileTypeFilter("key", KPRes.KeyFiles, true), 1, "key", AppDefs.FileDialogContext.KeyFile); if (sfd.ShowDialog() == DialogResult.OK) { EntropyForm dlg = new EntropyForm(); if (dlg.ShowDialog() == DialogResult.OK) { byte[] pbAdditionalEntropy = dlg.GeneratedEntropy; try { KcpKeyFile.Create(sfd.FileName, pbAdditionalEntropy); string str = sfd.FileName; m_cmbKeyFile.Items.Add(str); m_cmbKeyFile.SelectedIndex = m_cmbKeyFile.Items.Count - 1; } catch (Exception exKC) { MessageService.ShowWarning(exKC); } } UIUtil.DestroyForm(dlg); } EnableUserControls(); }
private void btnExport_Click(object sender, EventArgs e) { if (!UserConfig.ByName("Parts").HasAny()) { return; } using (var sfd = new SaveFileDialogEx("Export styles settings", "Text file(*.txt)|*.txt")) { if (sfd.ShowDialog() != DialogResult.OK) { return; } using (var writer = new StreamWriter(sfd.FileName, false, Encoding.Default)) { var directoryPath = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "Libraries", "Style"); var data = UserConfig.ByName("Parts").data; var result = data.Select(x => x.s1).Distinct(); foreach (var d in result) { var dir = Path.GetDirectoryName(d); if (dir != directoryPath) { continue; } writer.WriteLine(d); writer.WriteLine(UserConfig.ByName("Parts")[d, "Size"]); writer.WriteLine(UserConfig.ByName("Parts")[d, "Position"]); } } } MessageBox.Show("Styles settings exported!", "Done"); }
private void OnClickKeyFileCreate(object sender, EventArgs e) { SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog(KPRes.KeyFileCreate, UrlUtil.StripExtension(UrlUtil.GetFileName(m_ioInfo.Path)) + "." + AppDefs.FileExtension.KeyFile, UIUtil.CreateFileTypeFilter("key", KPRes.KeyFiles, true), 1, "key", null); if (sfd.ShowDialog() == DialogResult.OK) { using (EntropyForm dlg = new EntropyForm()) { if (dlg.ShowDialog() == DialogResult.OK) { byte[] pbAdditionalEntropy = dlg.GeneratedEntropy; try { KcpKeyFile.Create(sfd.FileName, pbAdditionalEntropy); } catch (Exception exKC) { MessageService.ShowWarning(exKC); } } } EnableUserControls(); } }
public void DoPhoto() { using (var sfd = new SaveFileDialogEx("Save screenshot", "Image file(*.jpg)|*.jpg")) { if (sfd.ShowDialog() != DialogResult.OK) { return; } ProgramCore.MainForm.ctrlRenderControl.GrabScreenshot(sfd.FileName, ProgramCore.MainForm.ctrlRenderControl.ClientSize.Width, ProgramCore.MainForm.ctrlRenderControl.ClientSize.Height); } }
private void OnBtnCustomSave(object sender, EventArgs e) { ListView.SelectedListViewItemCollection lvsic = m_lvCustomIcons.SelectedItems; if ((lvsic == null) || (lvsic.Count == 0)) { return; } if (lvsic.Count == 1) { StringBuilder sbFilter = new StringBuilder(); AddFileType(sbFilter, "*.png", "Portable Network Graphics (*.png)"); // AddFileType(sbFilter, "*.ico", "Windows Icon (*.ico)"); sbFilter.Append(@"|" + KPRes.AllFiles + @" (*.*)|*.*"); SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog(KPRes.ExportFileTitle, KPRes.Export + ".png", sbFilter.ToString(), 1, null, AppDefs.FileDialogContext.Export); if (sfd.ShowDialog() == DialogResult.OK) { SaveImageFile(lvsic[0], sfd.FileName); } } else // lvsic.Count >= 2 { FolderBrowserDialog fbd = UIUtil.CreateFolderBrowserDialog(KPRes.ExportToPrompt); if (fbd.ShowDialog() == DialogResult.OK) { string strDir = UrlUtil.EnsureTerminatingSeparator( fbd.SelectedPath, false); int nExportIndex = 0; foreach (ListViewItem lvi in lvsic) { try { string strFile; do { strFile = strDir + KPRes.Export + nExportIndex.ToString() + ".png"; ++nExportIndex; }while(File.Exists(strFile)); SaveImageFile(lvi, strFile); } catch (Exception ex) { MessageService.ShowWarning(ex.Message); } } } } }
private void browseButton_Click(object sender, EventArgs e) { var sfd = new SaveFileDialogEx("Select a location for your new Certificate Shortcut Provider Key file."); sfd.Filter = $"Certificate Shortcut Provider Key files (*{CertificateShortcutProvider.DefaultKeyExtension})|*{CertificateShortcutProvider.DefaultKeyExtension}|All files (*.*)|*.*"; sfd.FileName = keyFileLocationTextBox.Text; if (sfd.ShowDialog() == DialogResult.OK) { keyFileLocationTextBox.Text = sfd.FileName; } }
private void OnFileSaveAs(object sender, EventArgs e) { SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog("Save KeePass Translation", m_tbNameEng.Text + ".lngx", m_strFileFilter, 1, "lngx", AppDefs.FileDialogContext.Attachments); if (sfd.ShowDialog() != DialogResult.OK) { return; } m_strFile = sfd.FileName; OnFileSave(sender, e); }
private void OnFileSaveAs(object sender, EventArgs e) { SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog("Save KeePass Translation", m_tbNameEng.Text + ".lngx", m_strFileFilter, 1, "lngx", string.Empty); InitFileDialog(sfd); if (sfd.ShowDialog() != DialogResult.OK) { return; } SetCurrentFile(sfd.FileName); OnFileSave(sender, e); }
private string GetKeyFilePath() { string strExt = AppDefs.FileExtension.KeyFile; string strFilter = AppDefs.GetKeyFileFilter(); string strName = UrlUtil.StripExtension(UrlUtil.GetFileName(m_ioInfo.Path)); if (string.IsNullOrEmpty(strName)) { strName = KPRes.KeyFileSafe; } SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog(KPRes.KeyFileCreateTitle, strName + "." + strExt, strFilter, 1, strExt, AppDefs.FileDialogContext.KeyFile); if (sfd.ShowDialog() == DialogResult.OK) { return(sfd.FileName); } return(null); }
public void SaveSelected() { // Copied from PwEntryForm.OnBtnBinSave (PwEntryForm.cs) var lvsc = SelectedObjects.Cast <RowObject>().ToList(); int nSelCount = lvsc.Count; if (nSelCount == 0) { Debug.Assert(false); return; } if (nSelCount == 1) { SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog(KPRes.AttachmentSave, lvsc[0].Name, UIUtil.CreateFileTypeFilter(null, null, true), 1, null, KeePass.App.AppDefs.FileDialogContext.Attachments); if (sfd.ShowDialog() == DialogResult.OK) { SaveAttachmentTo(lvsc[0].Binary, sfd.FileName, false); } } else // nSelCount > 1 { FolderBrowserDialog fbd = UIUtil.CreateFolderBrowserDialog(KPRes.AttachmentsSave); if (fbd.ShowDialog() == DialogResult.OK) { string strRootPath = UrlUtil.EnsureTerminatingSeparator(fbd.SelectedPath, false); foreach (var lvi in lvsc) { SaveAttachmentTo(lvi.Binary, strRootPath + lvi.Name, true); } } fbd.Dispose(); } }
private void OnBtnSelFile(object sender, EventArgs e) { if (m_fmtCur == null) { Debug.Assert(false); return; } if (!m_fmtCur.RequiresFile) { return; // Break on double-click } string strFormat = m_fmtCur.FormatName; if (string.IsNullOrEmpty(strFormat)) { strFormat = KPRes.Data; } string strExts = m_fmtCur.DefaultExtension; if (string.IsNullOrEmpty(strExts)) { strExts = "export"; } string strPriExt = UIUtil.GetPrimaryFileTypeExt(strExts); if (strPriExt.Length == 0) { strPriExt = "export"; // In case of "|" } string strFilter = UIUtil.CreateFileTypeFilter(strExts, strFormat, true); if (m_bExport == false) // Import { OpenFileDialogEx ofd = UIUtil.CreateOpenFileDialog(KPRes.Import + ": " + strFormat, strFilter, 1, strPriExt, true, AppDefs.FileDialogContext.Import); if (ofd.ShowDialog() != DialogResult.OK) { return; } StringBuilder sb = new StringBuilder(); foreach (string str in ofd.FileNames) { if (sb.Length > 0) { sb.Append(';'); } if (str.IndexOf(';') >= 0) { MessageService.ShowWarning(str, KPRes.FileNameContainsSemicolonError); } else { sb.Append(str); } } string strFiles = sb.ToString(); if (strFiles.Length < m_tbFile.MaxLength) { m_tbFile.Text = strFiles; } else { MessageService.ShowWarning(KPRes.TooManyFilesError); } } else // Export { SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog(KPRes.Export + ": " + strFormat, null, strFilter, 1, strPriExt, AppDefs.FileDialogContext.Export); string strSuggestion; if ((m_pwDatabaseInfo != null) && (m_pwDatabaseInfo.IOConnectionInfo.Path.Length > 0)) { strSuggestion = UrlUtil.StripExtension(UrlUtil.GetFileName( m_pwDatabaseInfo.IOConnectionInfo.Path)); } else { strSuggestion = KPRes.Database; } strSuggestion += "." + strPriExt; sfd.FileName = strSuggestion; if (sfd.ShowDialog() != DialogResult.OK) { return; } m_tbFile.Text = sfd.FileName; } UpdateUIState(); }
private void OnBtnCustomSave(object sender, EventArgs e) { ListView.SelectedListViewItemCollection lvsic = m_lvCustomIcons.SelectedItems; if (lvsic.Count == 0) { return; } if (lvsic.Count == 1) { PwCustomIcon ci = (lvsic[0].Tag as PwCustomIcon); if (ci == null) { Debug.Assert(false); return; } string strName = KPRes.Export; if (ci.Name.Length != 0) { strName = ci.Name; } strName = UrlUtil.FilterFileName(strName); StringBuilder sbFilter = new StringBuilder(); AddFileType(sbFilter, "*.png", "Portable Network Graphics (*.png)"); // AddFileType(sbFilter, "*.ico", "Windows Icon (*.ico)"); sbFilter.Append(@"|" + KPRes.AllFiles + @" (*.*)|*.*"); SaveFileDialogEx sfd = UIUtil.CreateSaveFileDialog(KPRes.ExportFileTitle, strName + ".png", sbFilter.ToString(), 1, null, AppDefs.FileDialogContext.Export); if (sfd.ShowDialog() == DialogResult.OK) { SaveImageFile(ci, sfd.FileName); } } else // lvsic.Count >= 2 { FolderBrowserDialog fbd = UIUtil.CreateFolderBrowserDialog(KPRes.ExportToPrompt); if (fbd.ShowDialog() != DialogResult.OK) { return; } string strDir = UrlUtil.EnsureTerminatingSeparator( fbd.SelectedPath, false); Dictionary <string, int> dStart = new Dictionary <string, int>(); foreach (ListViewItem lvi in lvsic) { try { PwCustomIcon ci = (lvi.Tag as PwCustomIcon); if (ci == null) { Debug.Assert(false); continue; } string strName = KPRes.Export; if (ci.Name.Length != 0) { strName = ci.Name; } strName = UrlUtil.FilterFileName(strName); int iStart; dStart.TryGetValue(strName, out iStart); for (int i = iStart; i < int.MaxValue; ++i) { string strFile = strDir + strName + ((i == 0) ? string.Empty : (" (" + i.ToString() + ")")) + ".png"; if (!File.Exists(strFile)) { SaveImageFile(ci, strFile); dStart[strName] = i + 1; break; } } } catch (Exception ex) { MessageService.ShowWarning(ex); } } } }