1
0
mirror of https://github.com/chylex/TweetDuck.git synced 2025-08-18 13:31:41 +02:00
Files
.github
.idea
Application
Browser
Configuration
Controls
Dialogs
Settings
DialogSettingsCSS.Designer.cs
DialogSettingsCSS.cs
DialogSettingsCefArgs.Designer.cs
DialogSettingsCefArgs.cs
DialogSettingsExternalProgram.Designer.cs
DialogSettingsExternalProgram.cs
DialogSettingsManage.Designer.cs
DialogSettingsManage.cs
DialogSettingsRestart.Designer.cs
DialogSettingsRestart.cs
DialogSettingsSearchEngine.Designer.cs
DialogSettingsSearchEngine.cs
TabSettingsAdvanced.Designer.cs
TabSettingsAdvanced.cs
TabSettingsFeedback.Designer.cs
TabSettingsFeedback.cs
TabSettingsGeneral.Designer.cs
TabSettingsGeneral.cs
TabSettingsNotifications.Designer.cs
TabSettingsNotifications.cs
TabSettingsSounds.Designer.cs
TabSettingsSounds.cs
TabSettingsTray.Designer.cs
TabSettingsTray.cs
FormAbout.Designer.cs
FormAbout.cs
FormGuide.Designer.cs
FormGuide.cs
FormMessage.Designer.cs
FormMessage.cs
FormPlugins.Designer.cs
FormPlugins.cs
FormSettings.Designer.cs
FormSettings.cs
Management
Plugins
Properties
Resources
Updates
Utils
bld
lib
subprocess
video
.gitattributes
.gitignore
LICENSE.md
Program.cs
README.md
Reporter.cs
TweetDuck.csproj
TweetDuck.sln
TweetDuck.sln.DotSettings
Version.cs
app.config
packages.config
TweetDuck/Dialogs/Settings/DialogSettingsExternalProgram.cs

56 lines
1.5 KiB
C#

using System;
using System.Windows.Forms;
using TweetLib.Utils.Static;
using IOPath = System.IO.Path;
namespace TweetDuck.Dialogs.Settings {
sealed partial class DialogSettingsExternalProgram : Form {
public string Path {
get => StringUtils.NullIfEmpty(textBoxPath.Text);
set => textBoxPath.Text = value ?? string.Empty;
}
public string Args {
get => StringUtils.NullIfEmpty(textBoxArgs.Text);
set => textBoxArgs.Text = value ?? string.Empty;
}
private readonly string fileDialogTitle;
public DialogSettingsExternalProgram(string windowTitle, string fileDialogTitle) {
InitializeComponent();
Text = Program.BrandName + " Options - " + windowTitle;
AcceptButton = btnApply;
CancelButton = btnCancel;
this.fileDialogTitle = fileDialogTitle;
}
private void btnBrowse_Click(object sender, EventArgs e) {
using OpenFileDialog dialog = new OpenFileDialog {
AutoUpgradeEnabled = true,
DereferenceLinks = true,
InitialDirectory = IOPath.GetDirectoryName(Path), // returns null if argument is null
Title = fileDialogTitle,
Filter = "Executables (*.exe;*.bat;*.cmd)|*.exe;*.bat;*.cmd|All Files (*.*)|*.*"
};
if (dialog.ShowDialog() == DialogResult.OK && Path != dialog.FileName) {
Path = dialog.FileName;
Args = string.Empty;
}
}
private void btnApply_Click(object sender, EventArgs e) {
DialogResult = DialogResult.OK;
Close();
}
private void btnCancel_Click(object sender, EventArgs e) {
DialogResult = DialogResult.Cancel;
Close();
}
}
}