/// <summary> /// Filter by direction /// </summary> /// <param name="actualQueryDirection">The actual query direction.</param> /// <returns></returns> /// <remarks>Documented by Dev08, 2009-07-16</remarks> private bool CardSearchFilterDirection(IQueryDirections actualQueryDirection) { //If all checkboxes are unchecked, return true; if (!checkBoxFilterQA.IsChecked.Value && !checkBoxFilterAQ.IsChecked.Value && !checkBoxFilterMix.IsChecked.Value) { return(true); } //At least one checkbox is checked, so don't show cards with "null" values if (!actualQueryDirection.Question2Answer.HasValue || !actualQueryDirection.Answer2Question.HasValue || !actualQueryDirection.Mixed.HasValue) { return(false); } if (actualQueryDirection.Question2Answer.Value != checkBoxFilterQA.IsChecked.Value) { return(false); } if (actualQueryDirection.Answer2Question.Value != checkBoxFilterAQ.IsChecked.Value) { return(false); } if (actualQueryDirection.Mixed.Value != checkBoxFilterMix.IsChecked.Value) { return(false); } return(true); }
/// <summary> /// Sets the allowed query directions. /// </summary> /// <param name="queryDirections">The query directions.</param> /// <remarks>Documented by Dev02, 2008-01-09</remarks> public void SetAllowedQueryDirections(IQueryDirections queryDirections) { if (!(RBDirectionQuestionAnswer.Enabled = queryDirections.Question2Answer.GetValueOrDefault())) { RBDirectionQuestionAnswer.Checked = false; } if (!(RBDirectionAnswerQuestion.Enabled = queryDirections.Answer2Question.GetValueOrDefault())) { RBDirectionAnswerQuestion.Checked = false; } if (!(RBDirectionMixed.Enabled = queryDirections.Mixed.GetValueOrDefault())) { RBDirectionMixed.Checked = false; } }
/// <summary> /// Handles the Click event of the btnOK control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> /// <remarks>Documented by Dev02, 2008-01-10</remarks> private void buttonOK_Click(object sender, EventArgs e) { if (!learnModes.ValidateInput()) { return; } if (dictionary.CanModify) { //save LearningModule captions dictionary.DefaultSettings.QuestionCaption = dictionaryCaptions.QuestionTitle; dictionary.DefaultSettings.AnswerCaption = dictionaryCaptions.AnswerTitle; dictionary.DefaultSettings.QuestionCulture = dictionaryCaptions.QuestionCulture; dictionary.DefaultSettings.AnswerCulture = dictionaryCaptions.AnswerCulture; //save LearningModule properties dictionary.Author = dictionaryProperties.DictionaryAuthor; dictionary.Description = dictionaryProperties.DictionaryDescription; dictionary.Category = dictionaryProperties.DictionaryCategory; //save commentary sounds dictionary.DefaultSettings.CommentarySounds = commentarySounds; IQueryDirections queryDirections = dictionary.AllowedQueryDirections; learnModes.GetQueryDirections(ref queryDirections); dictionary.AllowedQueryDirections = queryDirections; IQueryType queryTypes = dictionary.AllowedQueryTypes; learnModes.GetQueryTypes(ref queryTypes); dictionary.AllowedQueryTypes = queryTypes; dictionary.Save(); } this.DialogResult = DialogResult.OK; this.Close(); }
public QueryDirections(IQueryDirections defaultSettings, IQueryDirections userSettings) { this.defaultSettings = defaultSettings; this.userSettings = userSettings; }
public void SetQueryDirections(int id, IQueryDirections QueryDirections) { using (NpgsqlConnection con = PostgreSQLConn.CreateConnection(Parent.CurrentUser)) { using (NpgsqlCommand cmd = con.CreateCommand()) { cmd.CommandText = "SELECT query_directions FROM \"Settings\" WHERE id=:id"; cmd.Parameters.Add("id", id); int? qdid = PostgreSQLConn.ExecuteScalar<int>(cmd, Parent.CurrentUser); if (qdid.HasValue && qdid.Value > 0) { using (NpgsqlCommand cmd2 = con.CreateCommand()) { cmd2.CommandText = "UPDATE \"QueryDirections\" SET question2answer=:q2a, answer2question=:a2q, mixed=:mixed WHERE id=:id"; cmd2.Parameters.Add("id", qdid.Value); cmd2.Parameters.Add("q2a", QueryDirections.Question2Answer); cmd2.Parameters.Add("a2q", QueryDirections.Answer2Question); cmd2.Parameters.Add("mixed", QueryDirections.Mixed); PostgreSQLConn.ExecuteNonQuery(cmd2, Parent.CurrentUser); //Save to Cache Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsFk, id, Cache.DefaultSettingsValidationTime)] = qdid; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsQuestion2Answer, qdid.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Question2Answer; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsAnswer2Question, qdid.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Answer2Question; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsMixed, qdid.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Mixed; } } else { using (NpgsqlCommand cmd3 = con.CreateCommand()) { cmd3.CommandText = "INSERT INTO \"QueryDirections\" (question2answer, answer2question, mixed) VALUES " + "(:q2a, :a2q, :mixed); UPDATE \"Settings\" SET query_directions=currval('\"QueryDirections_id_seq\"') WHERE id=:id;" + "SELECT query_directions FROM \"Settings\" WHERE id=:id"; cmd3.Parameters.Add("id", id); cmd3.Parameters.Add("q2a", QueryDirections.Question2Answer); cmd3.Parameters.Add("a2q", QueryDirections.Answer2Question); cmd3.Parameters.Add("mixed", QueryDirections.Mixed); int? queryDirectionsId = PostgreSQLConn.ExecuteScalar<int>(cmd3, Parent.CurrentUser); //Save to Cache Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsFk, id, Cache.DefaultSettingsValidationTime)] = queryDirectionsId; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsQuestion2Answer, queryDirectionsId.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Question2Answer; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsAnswer2Question, queryDirectionsId.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Answer2Question; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsMixed, queryDirectionsId.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Mixed; } } } } }
/// <summary> /// Sets the query directions. /// </summary> /// <param name="queryDirections">The query directions.</param> /// <remarks>Documented by Dev02, 2008-01-09</remarks> public void SetQueryDirections(IQueryDirections queryDirections) { if (RBDirectionQuestionAnswer.Enabled) RBDirectionQuestionAnswer.Checked = queryDirections.Question2Answer.GetValueOrDefault(); if (RBDirectionAnswerQuestion.Enabled) RBDirectionAnswerQuestion.Checked = queryDirections.Answer2Question.GetValueOrDefault(); if (RBDirectionMixed.Enabled) RBDirectionMixed.Checked = queryDirections.Mixed.GetValueOrDefault(); }
/// <summary> /// Sets the allowed query directions. /// </summary> /// <param name="queryDirections">The query directions.</param> /// <remarks>Documented by Dev02, 2008-01-09</remarks> public void SetAllowedQueryDirections(IQueryDirections queryDirections) { if (!(RBDirectionQuestionAnswer.Enabled = queryDirections.Question2Answer.GetValueOrDefault())) RBDirectionQuestionAnswer.Checked = false; if (!(RBDirectionAnswerQuestion.Enabled = queryDirections.Answer2Question.GetValueOrDefault())) RBDirectionAnswerQuestion.Checked = false; if (!(RBDirectionMixed.Enabled = queryDirections.Mixed.GetValueOrDefault())) RBDirectionMixed.Checked = false; }
/// <summary> /// Gets the query directions. /// </summary> /// <param name="queryDirections">The query directions.</param> /// <remarks>Documented by Dev02, 2008-01-09</remarks> public void GetQueryDirections(ref IQueryDirections queryDirections) { queryDirections.Question2Answer = RBDirectionQuestionAnswer.Checked; queryDirections.Answer2Question = RBDirectionAnswerQuestion.Checked; queryDirections.Mixed = RBDirectionMixed.Checked; }
/// <summary> /// Sets the query directions. /// </summary> /// <param name="id">The id.</param> /// <param name="QueryDirections">The query directions.</param> /// <remarks>Documented by Dev05, 2009-01-15</remarks> public void SetQueryDirections(int id, IQueryDirections QueryDirections) { SqlCeCommand cmd = MSSQLCEConn.CreateCommand(Parent.CurrentUser); cmd.CommandText = "SELECT query_directions FROM \"Settings\" WHERE id=@id"; cmd.Parameters.Add("@id", id); int? qdid = MSSQLCEConn.ExecuteScalar<int>(cmd); if (qdid.HasValue && qdid.Value > 0) { SqlCeCommand cmd2 = MSSQLCEConn.CreateCommand(Parent.CurrentUser); cmd2.CommandText = "UPDATE \"QueryDirections\" SET question2answer=@q2a, answer2question=@a2q, mixed=@mixed WHERE id=@id"; cmd2.Parameters.Add("@id", qdid.Value); cmd2.Parameters.Add("@q2a", QueryDirections.Question2Answer); cmd2.Parameters.Add("@a2q", QueryDirections.Answer2Question); cmd2.Parameters.Add("@mixed", QueryDirections.Mixed); MSSQLCEConn.ExecuteNonQuery(cmd2); //Save to Cache Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsFk, id, Cache.DefaultSettingsValidationTime)] = qdid; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsQuestion2Answer, qdid.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Question2Answer; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsAnswer2Question, qdid.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Answer2Question; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsMixed, qdid.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Mixed; } else { SqlCeCommand cmd3 = MSSQLCEConn.CreateCommand(Parent.CurrentUser); cmd3.CommandText = "INSERT INTO \"QueryDirections\" (question2answer, answer2question, mixed) VALUES " + "(@q2a, @a2q, @mixed); UPDATE \"Settings\" SET query_directions=@@IDENTITY WHERE id=@id;" + "SELECT query_directions FROM \"Settings\" WHERE id=@id"; cmd3.Parameters.Add("@id", id); cmd3.Parameters.Add("@q2a", QueryDirections.Question2Answer); cmd3.Parameters.Add("@a2q", QueryDirections.Answer2Question); cmd3.Parameters.Add("@mixed", QueryDirections.Mixed); int? queryDirectionsId = MSSQLCEConn.ExecuteScalar<int>(cmd3); //Save to Cache Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsFk, id, Cache.DefaultSettingsValidationTime)] = queryDirectionsId; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsQuestion2Answer, queryDirectionsId.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Question2Answer; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsAnswer2Question, queryDirectionsId.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Answer2Question; Parent.CurrentUser.Cache[ObjectLifetimeIdentifier.Create(CacheObject.SettingsQueryDirectionsMixed, queryDirectionsId.Value, Cache.DefaultSettingsValidationTime)] = QueryDirections.Mixed; } }
/// <summary> /// Filter by direction /// </summary> /// <param name="actualQueryDirection">The actual query direction.</param> /// <returns></returns> /// <remarks>Documented by Dev08, 2009-07-16</remarks> private bool CardSearchFilterDirection(IQueryDirections actualQueryDirection) { //If all checkboxes are unchecked, return true; if (!checkBoxFilterQA.IsChecked.Value && !checkBoxFilterAQ.IsChecked.Value && !checkBoxFilterMix.IsChecked.Value) return true; //At least one checkbox is checked, so don't show cards with "null" values if (!actualQueryDirection.Question2Answer.HasValue || !actualQueryDirection.Answer2Question.HasValue || !actualQueryDirection.Mixed.HasValue) return false; if (actualQueryDirection.Question2Answer.Value != checkBoxFilterQA.IsChecked.Value) return false; if (actualQueryDirection.Answer2Question.Value != checkBoxFilterAQ.IsChecked.Value) return false; if (actualQueryDirection.Mixed.Value != checkBoxFilterMix.IsChecked.Value) return false; return true; }