mirror of
https://github.com/chylex/TweetDuck.git
synced 2024-11-15 02:42:46 +01:00
56 lines
1.5 KiB
C#
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();
|
|
}
|
|
}
|
|
}
|