Rename solution, project, files and namespaces.
This commit is contained in:
245
dlgFilesystem.xeto.cs
Normal file
245
dlgFilesystem.xeto.cs
Normal file
@@ -0,0 +1,245 @@
|
||||
//
|
||||
// Author:
|
||||
// Natalia Portillo claunia@claunia.com
|
||||
//
|
||||
// Copyright (c) 2017, © Claunia.com
|
||||
//
|
||||
// All rights reserved.
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in
|
||||
// the documentation and/or other materials provided with the distribution.
|
||||
// * Neither the name of the [ORGANIZATION] nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
//
|
||||
|
||||
using System;
|
||||
using Eto.Forms;
|
||||
using Eto.Serialization.Xaml;
|
||||
using Schemas;
|
||||
|
||||
namespace apprepodbmgr.Eto
|
||||
{
|
||||
public class dlgFilesystem : Dialog
|
||||
{
|
||||
public FileSystemType Metadata;
|
||||
public bool Modified;
|
||||
|
||||
public dlgFilesystem()
|
||||
{
|
||||
XamlReader.Load(this);
|
||||
Modified = false;
|
||||
}
|
||||
|
||||
public void FillFields()
|
||||
{
|
||||
if(Metadata == null) return;
|
||||
|
||||
if(Metadata.Type != null) txtType.Text = Metadata.Type;
|
||||
if(Metadata.CreationDateSpecified)
|
||||
{
|
||||
chkCreationDate.Checked = true;
|
||||
cldCreationDate.Enabled = true;
|
||||
cldCreationDate.Value = Metadata.CreationDate;
|
||||
}
|
||||
|
||||
if(Metadata.ModificationDateSpecified)
|
||||
{
|
||||
chkModificationDate.Checked = true;
|
||||
cldModificationDate.Enabled = true;
|
||||
cldModificationDate.Value = Metadata.ModificationDate;
|
||||
}
|
||||
|
||||
if(Metadata.BackupDateSpecified)
|
||||
{
|
||||
chkBackupDate.Checked = true;
|
||||
cldBackupDate.Enabled = true;
|
||||
cldBackupDate.Value = Metadata.BackupDate;
|
||||
}
|
||||
|
||||
spClusterSize.Value = Metadata.ClusterSize;
|
||||
txtClusters.Text = Metadata.Clusters.ToString();
|
||||
if(Metadata.FilesSpecified) txtFiles.Text = Metadata.Files.ToString();
|
||||
chkBootable.Checked = Metadata.Bootable;
|
||||
if(Metadata.VolumeSerial != null) txtSerial.Text = Metadata.VolumeSerial;
|
||||
if(Metadata.VolumeName != null) txtLabel.Text = Metadata.VolumeName;
|
||||
if(Metadata.FreeClustersSpecified) txtFreeClusters.Text = Metadata.FreeClusters.ToString();
|
||||
chkDirty.Checked = Metadata.Dirty;
|
||||
if(Metadata.ExpirationDateSpecified)
|
||||
{
|
||||
chkExpirationDate.Checked = true;
|
||||
cldExpirationDate.Enabled = true;
|
||||
cldExpirationDate.Value = Metadata.ExpirationDate;
|
||||
}
|
||||
|
||||
if(Metadata.EffectiveDateSpecified)
|
||||
{
|
||||
chkEffectiveDate.Checked = true;
|
||||
cldEffectiveDate.Enabled = true;
|
||||
cldEffectiveDate.Value = Metadata.EffectiveDate;
|
||||
}
|
||||
|
||||
if(Metadata.SystemIdentifier != null) txtSysId.Text = Metadata.SystemIdentifier;
|
||||
if(Metadata.VolumeSetIdentifier != null) txtVolId.Text = Metadata.VolumeSetIdentifier;
|
||||
if(Metadata.PublisherIdentifier != null) txtPubId.Text = Metadata.PublisherIdentifier;
|
||||
if(Metadata.DataPreparerIdentifier != null) txtDataId.Text = Metadata.DataPreparerIdentifier;
|
||||
if(Metadata.ApplicationIdentifier != null) txtAppId.Text = Metadata.ApplicationIdentifier;
|
||||
}
|
||||
|
||||
protected void OnChkCreationDateToggled(object sender, EventArgs e)
|
||||
{
|
||||
cldCreationDate.Enabled = chkCreationDate.Checked.Value;
|
||||
}
|
||||
|
||||
protected void OnChkModificationDateToggled(object sender, EventArgs e)
|
||||
{
|
||||
cldModificationDate.Enabled = chkModificationDate.Checked.Value;
|
||||
}
|
||||
|
||||
protected void OnChkEffectiveDateToggled(object sender, EventArgs e)
|
||||
{
|
||||
cldEffectiveDate.Enabled = chkEffectiveDate.Checked.Value;
|
||||
}
|
||||
|
||||
protected void OnChkExpirationDateToggled(object sender, EventArgs e)
|
||||
{
|
||||
cldExpirationDate.Enabled = chkExpirationDate.Checked.Value;
|
||||
}
|
||||
|
||||
protected void OnChkBackupDateToggled(object sender, EventArgs e)
|
||||
{
|
||||
cldBackupDate.Enabled = chkBackupDate.Checked.Value;
|
||||
}
|
||||
|
||||
protected void OnBtnCancelClicked(object sender, EventArgs e)
|
||||
{
|
||||
Modified = false;
|
||||
Close();
|
||||
}
|
||||
|
||||
protected void OnBtnSaveClicked(object sender, EventArgs e)
|
||||
{
|
||||
if(string.IsNullOrWhiteSpace(txtType.Text))
|
||||
MessageBox.Show("Filesystem type cannot be empty", MessageBoxType.Error);
|
||||
|
||||
if(spClusterSize.Value < 1) MessageBox.Show("Clusters must be bigger than 0 bytes", MessageBoxType.Error);
|
||||
|
||||
if(!long.TryParse(txtClusters.Text, out long temp))
|
||||
MessageBox.Show("Clusters must be a number", MessageBoxType.Error);
|
||||
|
||||
if(temp < 1) MessageBox.Show("Filesystem must have more than 0 clusters", MessageBoxType.Error);
|
||||
|
||||
if(!string.IsNullOrWhiteSpace(txtFiles.Text) && !long.TryParse(txtFiles.Text, out temp))
|
||||
MessageBox.Show("Files must be a number, or empty for unknown", MessageBoxType.Error);
|
||||
|
||||
if(!string.IsNullOrWhiteSpace(txtFiles.Text) && temp < 0)
|
||||
MessageBox.Show("Files must be positive", MessageBoxType.Error);
|
||||
|
||||
if(!string.IsNullOrWhiteSpace(txtFreeClusters.Text) && !long.TryParse(txtFreeClusters.Text, out temp))
|
||||
MessageBox.Show("Free clusters must be a number or empty for unknown", MessageBoxType.Error);
|
||||
|
||||
if(!string.IsNullOrWhiteSpace(txtFreeClusters.Text) && temp < 0)
|
||||
MessageBox.Show("Free clusters must be positive", MessageBoxType.Error);
|
||||
|
||||
Metadata = new FileSystemType {Type = txtType.Text};
|
||||
if(chkCreationDate.Checked.Value)
|
||||
{
|
||||
Metadata.CreationDateSpecified = true;
|
||||
Metadata.CreationDate = cldCreationDate.Value.Value;
|
||||
}
|
||||
|
||||
if(chkModificationDate.Checked.Value)
|
||||
{
|
||||
Metadata.ModificationDateSpecified = true;
|
||||
Metadata.ModificationDate = cldModificationDate.Value.Value;
|
||||
}
|
||||
|
||||
if(chkBackupDate.Checked.Value)
|
||||
{
|
||||
Metadata.BackupDateSpecified = true;
|
||||
Metadata.BackupDate = cldBackupDate.Value.Value;
|
||||
}
|
||||
|
||||
Metadata.ClusterSize = (int)spClusterSize.Value;
|
||||
Metadata.Clusters = long.Parse(txtClusters.Text);
|
||||
if(!string.IsNullOrWhiteSpace(txtFiles.Text))
|
||||
{
|
||||
Metadata.FilesSpecified = true;
|
||||
Metadata.Files = long.Parse(txtFiles.Text);
|
||||
}
|
||||
|
||||
Metadata.Bootable = chkBootable.Checked.Value;
|
||||
if(!string.IsNullOrWhiteSpace(txtSerial.Text)) Metadata.VolumeSerial = txtSerial.Text;
|
||||
if(!string.IsNullOrWhiteSpace(txtLabel.Text)) Metadata.VolumeName = txtLabel.Text;
|
||||
if(!string.IsNullOrWhiteSpace(txtFreeClusters.Text))
|
||||
{
|
||||
Metadata.FreeClustersSpecified = true;
|
||||
Metadata.FreeClusters = long.Parse(txtFreeClusters.Text);
|
||||
}
|
||||
|
||||
Metadata.Dirty = chkDirty.Checked.Value;
|
||||
if(chkExpirationDate.Checked.Value)
|
||||
{
|
||||
Metadata.ExpirationDateSpecified = true;
|
||||
Metadata.ExpirationDate = cldExpirationDate.Value.Value;
|
||||
}
|
||||
|
||||
if(chkEffectiveDate.Checked.Value)
|
||||
{
|
||||
Metadata.EffectiveDateSpecified = true;
|
||||
Metadata.EffectiveDate = cldEffectiveDate.Value.Value;
|
||||
}
|
||||
|
||||
if(!string.IsNullOrWhiteSpace(txtSysId.Text)) Metadata.SystemIdentifier = txtSysId.Text;
|
||||
if(!string.IsNullOrWhiteSpace(txtVolId.Text)) Metadata.VolumeSetIdentifier = txtVolId.Text;
|
||||
if(!string.IsNullOrWhiteSpace(txtPubId.Text)) Metadata.PublisherIdentifier = txtPubId.Text;
|
||||
if(!string.IsNullOrWhiteSpace(txtDataId.Text)) Metadata.DataPreparerIdentifier = txtDataId.Text;
|
||||
if(!string.IsNullOrWhiteSpace(txtAppId.Text)) Metadata.ApplicationIdentifier = txtAppId.Text;
|
||||
|
||||
Modified = true;
|
||||
Close();
|
||||
}
|
||||
|
||||
#region XAML UI elements
|
||||
#pragma warning disable 0649
|
||||
TextBox txtType;
|
||||
TextBox txtFiles;
|
||||
CheckBox chkBootable;
|
||||
CheckBox chkDirty;
|
||||
NumericUpDown spClusterSize;
|
||||
TextBox txtClusters;
|
||||
TextBox txtFreeClusters;
|
||||
CheckBox chkCreationDate;
|
||||
DateTimePicker cldCreationDate;
|
||||
CheckBox chkModificationDate;
|
||||
DateTimePicker cldModificationDate;
|
||||
CheckBox chkEffectiveDate;
|
||||
DateTimePicker cldEffectiveDate;
|
||||
CheckBox chkExpirationDate;
|
||||
DateTimePicker cldExpirationDate;
|
||||
CheckBox chkBackupDate;
|
||||
DateTimePicker cldBackupDate;
|
||||
TextBox txtLabel;
|
||||
TextBox txtSerial;
|
||||
TextBox txtSysId;
|
||||
TextBox txtVolId;
|
||||
TextBox txtPubId;
|
||||
TextBox txtDataId;
|
||||
TextBox txtAppId;
|
||||
#pragma warning restore 0649
|
||||
#endregion XAML UI elements
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user