public override bool Equals(object obj) { if (obj == null || GetType() != obj.GetType()) { return(false); } if (ReferenceEquals(this, obj)) { return(true); } TimerDurationSettings that = obj as TimerDurationSettings; if (that == null) { return(false); } return(this.id.Equals(that.id) && this.Title.Equals(that.Title) && this.Duration.Equals(that.Duration) && this.WarningTime.Equals(that.WarningTime) && this.SecondWarningTime.Equals(that.SecondWarningTime)); }
public TimerDurationSettings Save(TimerDurationSettings timerDuration) { var parameters = new List <SQLiteParameter> { new SQLiteParameter() { ParameterName = TitleCol.ParameterName, Value = timerDuration.Title }, new SQLiteParameter() { ParameterName = DurationCol.ParameterName, Value = timerDuration.Duration }, new SQLiteParameter() { ParameterName = Warning1Col.ParameterName, Value = timerDuration.WarningTime }, new SQLiteParameter() { ParameterName = Warning2Col.ParameterName, Value = timerDuration.SecondWarningTime } }; if (timerDuration.DurationId < 0) { var sql = "INSERT INTO [" + TableName + "](" + "[" + TitleCol.Name + "], " + "[" + DurationCol.Name + "], " + "[" + Warning1Col.Name + "], " + "[" + Warning2Col.Name + "]" + ") VALUES (" + "@" + TitleCol.ParameterName + ", " + "@" + DurationCol.ParameterName + ", " + "@" + Warning1Col.ParameterName + ", " + "@" + Warning2Col.ParameterName + ");"; var newId = (int)this.Insert(sql, parameters.ToArray()); return(new TimerDurationSettings(newId, timerDuration)); } var update = "UPDATE [" + TableName + "] SET " + "[" + TitleCol.Name + "] = @" + TitleCol.ParameterName + "," + "[" + DurationCol.Name + "] = @" + DurationCol.ParameterName + "," + "[" + Warning1Col.Name + "] = @" + Warning1Col.ParameterName + "," + "[" + Warning2Col.Name + "] = @" + Warning2Col.ParameterName + " " + "WHERE [" + IdCol.Name + "] = @" + IdCol.ParameterName + ";"; parameters.Add(new SQLiteParameter() { ParameterName = IdCol.ParameterName, Value = timerDuration.DurationId }); this.ExecuteNonQuery(update, parameters.ToArray()); return(timerDuration); }
private SimpleTimerSettings Parse(SQLiteDataReader reader) { if (reader[TimerSettingsModel.IdCol.Name] is DBNull) { return(null); } int id = Convert.ToInt32(reader[TimerSettingsModel.IdCol.Name]); string name = Convert.ToString(reader[TimerSettingsModel.NameCol.Name]); string finalMessage = Convert.ToString(reader[TimerSettingsModel.MessageCol.Name]); bool blinkOnExpired = Convert.ToInt32(reader[TimerSettingsModel.BlinkCol.Name]) > 0; TimerDurationSettings durationSettings = DurationSettingsModel.Parse(reader); TimerVisualSettings visualSettings = VisualSettingsModel.Parse(reader); return(new SimpleTimerSettings(id, name, finalMessage, blinkOnExpired, durationSettings, visualSettings, null)); }
public static TimerDurationSettings ParseCsv(string csv, int start = 0) { try { var values = csv.Split(new char[] { ',' }); var settings = new TimerDurationSettings(int.Parse(values[start + 0])) { Title = values[start + 1], Duration = double.Parse(values[start + 2]), WarningTime = double.Parse(values[start + 3]), SecondWarningTime = double.Parse(values[start + 4]), }; return(settings); } catch { return(TimerDurationSettings.Default); } }
public TimerDurationSettings(int durationId, TimerDurationSettings copy) : this(durationId, copy.Title, copy.Duration, copy.WarningTime, copy.SecondWarningTime) { }