private void addNewButton_Click(object sender, EventArgs e) { byte order; try { order = (byte) questionToPassageSetsDataGrid.Rows[questionToPassageSetsDataGrid.Rows.Count - 1].Cells[ questionOrderDataGridViewTextBoxColumn.Index].Value; } catch { order = 0; } Guid guid = Guid.NewGuid(); Dataset.QuestionsExRow questionRow = dbObject.FullDataset.QuestionsEx.AddQuestionsExRow(1, 1, 1, "New question to passage(" + guid + ")", null, value.SetId, order, 0, 0); dbObject.FullDataset.PassagesToQuestionsEx.AddPassagesToQuestionsExRow(value.Text, value.Id, questionRow.Id); questionRow.SubtypeId = 4; value.Text += ""; Question qse = new Question(questionRow, dbObject.GetConnection(), (PassageQuestion)(dbObject)); ApplicationController.Instance.Edit(qse); // dbObject.FullDatasetQuestionsEx.FindByIdSetId(Id, value.SetId).Text PassageQuestionEditor_Load(null, null); }
private void questionSetsDataGrid_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex == -1) { DataGridView gw = (DataGridView)sender; Dataset.QuestionsExRow questionRow = dbObject.FullDataset.QuestionsEx.FindByIdSetId((int)gw.Rows[e.RowIndex].Cells[0].Value, Id); if (questionRow.SubtypeId == 4) { try { for (int i = 0; i < dbObject.FullDataset.PassagesToQuestionsEx.Count; ++i) { if (dbObject.FullDataset.PassagesToQuestionsEx[i].Id == questionRow.Id) { questionRow = dbObject.FullDataset.QuestionsEx.FindByIdSetId(dbObject.FullDataset.PassagesToQuestionsEx[i].PassageQuestionId, Id); } } //questionRow = dbObject.FullDataset.QuestionsEx.FindByIdSetId(dbObject.FullDataset.PassagesToQuestionsEx.FindById(questionRow.Id).PassageQuestionId, Id); PassageQuestion qse = new PassageQuestion(questionRow, dbObject.GetConnection(), (QuestionSet)(dbObject)); ApplicationController.Instance.Edit(qse); }catch { MessageBox.Show("Problem in database! Check database.", "DbError", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { Question qse = new Question(questionRow, dbObject.GetConnection(), (QuestionSet)(dbObject)); ApplicationController.Instance.Edit(qse); } return; } }
//public Connection connection; public PassageQuestion(Dataset.QuestionsExRow value, Connection connection, Entity parent) : base(value.Text, new QuestionType( new OptionalInteger(value.IsTypeIdNull() ? null : (Object)value.TypeId), new OptionalInteger(value.IsSubtypeIdNull() ? null : (Object)value.SubtypeId))) { this.value = value; parent.AddNewChild(this); this.connection = connection; }
private void questionToPassageSetsDataGrid_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { DataGridView gw = (DataGridView)sender; if (e.ColumnIndex == -1) { Dataset.QuestionsExRow questionRow = dbObject.FullDataset.QuestionsEx.FindByIdSetId( (int)gw.Rows[e.RowIndex].Cells[idDataGridViewTextBoxColumn.Index].Value, value.SetId); //questionRow = dbObject.FullDataset.QuestionsEx.FindByIdSetId(dbObject.FullDataset.PassagesToQuestionsEx.FindById(questionRow.Id).PassageQuestionId, Id); Question qse = new Question(questionRow, dbObject.GetConnection(), (PassageQuestion)(dbObject)); ApplicationController.Instance.Edit(qse); } }
private void createButton_Click(object sender, EventArgs e) { byte[] temp = new byte[0]; newQuestion = data.QuestionsEx.AddQuestionsExRow(typeComboBox.SelectedIndex + 1, subTypecomboBox.SelectedIndex + 1, difficutlyLevelcomboBox.SelectedIndex + 1, textTextBox.Text, temp, setId, 0, 0, 0 ); if (picture == null) { newQuestion.SetPictureNull(); } else { newQuestion.Picture = picture; } DialogResult = DialogResult.OK; }
public override void SaveCurrentEdit() { Dataset.QuestionsExRow questionRow = dbObject.FullDataset.QuestionsEx.FindByIdSetId(_questionRow.Id, _questionRow.SetId); if (questionRow == null) { return; } questionRow.DifficultyLevelId = difficutlyLevelcomboBox.SelectedIndex + 1; questionRow.TypeId = (int)typeComboBox.SelectedValue; questionRow.SubtypeId = (int)subTypecomboBox.SelectedValue; questionRow.Text = textTextBox.Text; questionRow.Picture = picture; byte order = 0; for (int i = 0; i < dataSet.Answers.Count; ++i) { if (dataSet.Answers[i].RowState == DataRowState.Deleted) { continue; } if (dataSet.Answers[i].QuestionId != _questionRow.Id) { continue; } if (dataSet.Answers[i].RowState == DataRowState.Added) { dbObject.FullDataset.Answers.AddAnswersRow(_questionRow.Id, dataSet.Answers[i].Text, dataSet.Answers[i].IsCorrect, order); order++; } if (dataSet.Answers[i].RowState == DataRowState.Modified) { dbObject.FullDataset.Answers.FindById(dataSet.Answers[i].Id).Text = dataSet.Answers[i].Text; dbObject.FullDataset.Answers.FindById(dataSet.Answers[i].Id).IsCorrect = dataSet.Answers[i].IsCorrect; order++; continue; } } }
private void addButton_Click(object sender, EventArgs e) { if (questionDataGrid.SelectedRows.Count != 0) { for (int i = 0; i < dataset.QuestionsEx.Count; ++i) { if (dataset.QuestionsEx[i].RowState == DataRowState.Deleted) { continue; } if (dataset.QuestionsEx[i].Id == (int)questionDataGrid.SelectedRows[0].Cells[0].Value) { qr = dataset.QuestionsEx[i]; //FindByIdSetId((int)questionDataGrid.SelectedRows[0].Cells[0].Value); break; } } DialogResult = DialogResult.OK; } }
private void addNewButton_Click(object sender, EventArgs e) { byte order; try { order = (byte)questionSetsDataGrid.Rows[questionSetsDataGrid.Rows.Count - 1].Cells[questionOrderDataGridViewTextBoxColumn.Index].Value; }catch { order = 0; } Guid guid = Guid.NewGuid(); Dataset.QuestionsExRow questionRow = dbObject.FullDataset.QuestionsEx.AddQuestionsExRow(1, 1, 1, "New question (" + guid + ")", null, Id, order, 0, 0); if (!dbObject.FullDataset.QuestionSetsEx.FindById(Id).IsQuestionTypeIdNull()) { questionRow.TypeId = dbObject.FullDataset.QuestionSetsEx.FindById(Id).QuestionTypeId; } if (!dbObject.FullDataset.QuestionSetsEx.FindById(Id).IsQuestionSubtypeIdNull()) { questionRow.SubtypeId = dbObject.FullDataset.QuestionSetsEx.FindById(Id).QuestionSubtypeId; } Question qse = new Question(questionRow, dbObject.GetConnection(), (QuestionSet)(dbObject)); ApplicationController.Instance.Edit(qse); }
public void AddExistingQuestionToSet(Dataset.QuestionsExRow qsr, int order, int setId) { connection.DataProvider.AddExistingQuestionToSet(qsr, order, setId); ApplicationController.Instance.Refresh(connection); }
private void QuestionEditor_Load(object sender, EventArgs e) { //dataSet = (Dataset)data.Copy(); isInit = true; dataSet = (Dataset)dbObject.FullDataset.Copy(); _questionRow = ((Question)dbObject).Value; textTextBox.Text = _questionRow.Text; int setId = _questionRow.SetId; difficutlyLevelcomboBox.DataSource = dataSet.DifficultyLevel; difficutlyLevelcomboBox.DisplayMember = "Name"; difficutlyLevelcomboBox.SelectedIndex = dataSet.QuestionsEx.FindByIdSetId(_questionRow.Id, _questionRow.SetId).DifficultyLevelId - 1; difficutlyLevelcomboBox.Update(); if (_questionRow.SubtypeId == 4) { subTypecomboBox.Enabled = false; } typeComboBox.DataSource = dataSet.QuestionTypes; typeComboBox.DisplayMember = "Name"; typeComboBox.ValueMember = "id"; typeComboBox.SelectedValue = dataSet.QuestionsEx.FindByIdSetId(_questionRow.Id, _questionRow.SetId).TypeId; typeComboBox.Update(); subTypecomboBox.DataSource = dataSet.QuestionSubtypes; subTypecomboBox.DisplayMember = "Name"; subTypecomboBox.ValueMember = "id"; subTypecomboBox.SelectedValue = dataSet.QuestionsEx.FindByIdSetId(_questionRow.Id, _questionRow.SetId).SubtypeId; subTypecomboBox.Update(); if (!_questionRow.IsPictureNull()) { File.WriteAllBytes(Application.StartupPath + @"\templates\Picture.bmp", _questionRow.Picture); //pictureBox.Image = Image.FromFile(Application.StartupPath + @"\templates\Picture.bmp"); pictureBox.ImageLocation = Application.StartupPath + @"\templates\Picture.bmp"; addPicturebutton.Text = "edit"; picture = _questionRow.Picture; } if (!dataSet.QuestionSetsEx.FindById(setId).IsQuestionTypeIdNull()) { typeComboBox.SelectedIndex = dataSet.QuestionsEx.FindByIdSetId(_questionRow.Id, _questionRow.SetId).TypeId - 1; typeComboBox.Update(); typeComboBox.Enabled = false; } if (dbObject.Parent is PassageQuestion) { subTypecomboBox.Enabled = false; } if (!dataSet.QuestionSetsEx.FindById(setId).IsQuestionSubtypeIdNull()) { subTypecomboBox.SelectedIndex = dataSet.QuestionsEx.FindByIdSetId(_questionRow.Id, _questionRow.SetId).SubtypeId - 1; subTypecomboBox.Update(); subTypecomboBox.Enabled = false; } for (int i = 0; i < dataSet.Answers.Count; ++i) { if (dataSet.Answers[i].QuestionId != Id) { dataSet.Answers[i].Delete(); } else { lastOrder++; } } if (textTextBox.Text.LastIndexOf("<math display = \"block\">") != -1) { textTextBox.Enabled = false; addFormulaButton.Text = "edit question with formulas"; } answersDataGridView.DataSource = dataSet; ListSortDirection direction; direction = ListSortDirection.Ascending; answersDataGridView.Sort(answersDataGridView.Columns[orderDataGridViewTextBoxColumn.Index], direction); isInit = false; }