private void lvQuests_SelectedIndexChanged(object sender, EventArgs e) { if (lvQuests.SelectedItems.Count > 0) { ListViewItem lvi = lvQuests.SelectedItems[0]; if (lvi != null && lvi.Tag != null && lvi.Tag.GetType() == typeof(SHQuest)) { SHQuest quest = (SHQuest)lvi.Tag; if (quest != null) { pgQuest.SelectedObject = quest; pgQuest.Tag = lvi; ProcessQuest(quest); RefreshQuestDetail(quest); pgQuestElement.SelectedObject = null; pgQuestElement.Tag = null; Global._mainForm.SetStatusLabelText(quest.CompiledMessage); } } } m_ListViewController.OnSelectedIndexChanged(); }
public override void OnValueChanged(SourceGrid.CellContext sender, EventArgs e) { base.OnValueChanged(sender, e); SHQuest quest = (SHQuest)sender.Grid.Tag; if (quest == null) { return; } int selectedRow = sender.Position.Row; SourceGrid.Grid grid = (sender.Grid as SourceGrid.Grid); SHQuestReward reward = (SHQuestReward)(grid.Rows[selectedRow].Tag); if (sender.Position.Column == 0) { reward.type = (SHQuestRewardType)sender.Value; } else if (sender.Position.Column == 1) { reward.param1 = (string)sender.Value; } else if (sender.Position.Column == 2) { reward.param2 = (string)sender.Value; } m_GridController.RefreshPropertyGrid(selectedRow); Global._VelixianForms.FindForm("QUEST").Touch(); }
private void RefreshQuestDetail(SHQuest quest) { if (quest != null) { wbQuestDetail.DocumentText = quest.GetHTML(xmlCore); } }
public void AssignGrid(SHQuest quest) { if (quest == null) { return; } m_Grid.Tag = quest; m_Grid.Redim(1, COLUMN_COUNT); int nRowCount = 1; if (quest.Items != null) { nRowCount = quest.Items.dataList.Count + 1; } m_Grid.Redim(nRowCount, COLUMN_COUNT); if (quest.Items == null) { return; } for (int r = 0; r < quest.Items.dataList.Count; r++) { SHItemAddRemoveBase obj = (SHItemAddRemoveBase)quest.Items.dataList[r]; AssignNewGrid(r + 1, obj); } }
private void subQuestAdd_Click(object sender, EventArgs e) { int nSelQuestID = m_ListViewController.MakeNewID(); SHQuest newQuest = NewQuest(nSelQuestID); xmlCore.Quests.Add(newQuest); m_ListViewController.AddItem(newQuest); Global._VelixianForms.FindForm("QUEST").Touch(); }
private void ProcessQuest(SHQuest quest) { if (quest == null) { return; } m_ObjectiveGridController.AssignGrid(quest); m_RewardGridController.AssignGrid(quest); m_RewardGridController.AssignTextBoxs(quest); m_ItemGridController.AssignGrid(quest); }
public override void SetListText(ListViewItem lvi, SHDataObject selDataObject) { SHQuest quest = (SHQuest)(selDataObject); String szCond = ""; if (lvi == null) { return; } if (lvi.SubItems.Count > 1) { lvi.SubItems.Clear(); } quest.Compile(); quest.Build(m_XmlCore); if (quest.condition != 0 && quest.conditionSpecified) { try { szCond = m_XmlCore.Conditions[quest.condition].GetString(m_XmlCore); } catch { szCond = quest.condition.ToString() + " (Conditions have not been used)"; } } lvi.Text = quest.id.ToString(); lvi.SubItems.AddRange(new String[] { (quest.title != null) ? m_XmlCore.GetSafeString(quest.title) : String.Empty, (quest.category != null) ? m_XmlCore.GetSafeString(quest.category) : String.Empty, (quest.comment != null) ? m_XmlCore.GetSafeString(quest.comment) : String.Empty, (quest.desc != null) ? m_XmlCore.GetSafeString(quest.desc) : String.Empty, szCond }); lvi.Tag = quest; if (!quest.Passed) { lvi.ImageIndex = 7; } lvi.ForeColor = (quest.Passed) ? Color.Black : Color.Red; lvi.BackColor = (quest.Passed) ? Color.White : Color.Yellow; }
protected override int GetDataObjectID(object listViewItemTag) { if (listViewItemTag.GetType() != typeof(SHQuest)) { return(0); } SHQuest selQuest = (SHQuest)listViewItemTag; if (selQuest != null) { return(selQuest.id); } return(0); }
private void RefreshQuestDetail() { if (lvQuests.SelectedItems.Count > 0) { ListViewItem lvi = lvQuests.SelectedItems[0]; if (lvi != null && lvi.Tag != null && lvi.Tag.GetType() == typeof(SHQuest)) { SHQuest quest = (SHQuest)lvi.Tag; if (quest != null) { RefreshQuestDetail(quest); } } } }
protected override bool _PasteDataObject(SHDataObject tarDataObject) { if (m_XmlCore.Quests.IsValid(m_nCopyObjectID) == false) { return(false); } SHQuest srcQuest = m_XmlCore.Quests[m_nCopyObjectID]; SHQuest tarQuest = (SHQuest)(tarDataObject); tarQuest.Assign(srcQuest); Global._VelixianForms.FindForm("QUEST").Touch(); return(true); }
private SHQuest NewQuest(int nSelQuestID) { SHQuest newQuest = new SHQuest(); newQuest.Objectives = new SHQuestObjectives(); newQuest.Rewards = new SHQuestRewards(); newQuest.Items = new SHItemAddRemove(); newQuest.id = nSelQuestID; newQuest.title = "[New String]"; newQuest.comment = ""; newQuest.desc = ""; newQuest.repeatable = false; return(newQuest); }
public void AssignTextBoxs(SHQuest quest) { if (quest == null) { return; } m_tbDialog.Tag = null; m_tbRewarder.Tag = null; m_tbDialog.Text = quest.Rewards.dialog.ToString(); m_tbRewarder.Text = quest.Rewards.rewarder; m_tbDialog.Tag = quest.Rewards; m_tbRewarder.Tag = quest.Rewards; }
public void AddItem() { SHItemAdd newItem = new SHItemAdd(); newItem.id = 0; newItem.amount = 0; if (m_Grid.Tag != null && m_Grid.Tag.GetType() == typeof(SHQuest)) { SHQuest quest = (SHQuest)m_Grid.Tag; quest.Items.dataList.Add(newItem); AssignGrid(quest); Global._VelixianForms.FindForm("QUEST").Touch(); } }
public void AddReward() { SHQuestReward newObj = new SHQuestReward(); newObj.type = SHQuestRewardType.SILVER; newObj.param1 = ""; if (m_Grid.Tag != null && m_Grid.Tag.GetType() == typeof(SHQuest)) { SHQuest quest = (SHQuest)m_Grid.Tag; quest.Rewards.dataList.Add(newObj); AssignGrid(quest); Global._VelixianForms.FindForm("QUEST").Touch(); } }
private void pgQuest_PropertyValueChanged(object s, PropertyValueChangedEventArgs e) { if (pgQuest.Tag.GetType() == typeof(ListViewItem)) { SHQuest quest = (SHQuest)(pgQuest.SelectedObject as SHQuest); if (quest != null) { if (e.ChangedItem.Label == "(Username)" && quest.id != (int)e.OldValue) { m_ListViewController.SortListView(quest); } } m_ListViewController.SetListText(pgQuest.Tag as ListViewItem, pgQuest.SelectedObject as SHQuest); } RefreshQuestDetail(); Global._VelixianForms.FindForm("QUEST").Touch(); }
public void AddObjective() { SHQuestObjective newObj = new SHQuestObjective(); newObj.id = 1; newObj.desc = String.Empty; newObj.type = SHQuestType.DESTROY; newObj.public_progress = "self"; newObj.param1 = "0"; if (m_Grid.Tag != null && m_Grid.Tag.GetType() == typeof(SHQuest)) { SHQuest quest = (SHQuest)m_Grid.Tag; quest.Objectives.dataList.Add(newObj); AssignGrid(quest); Global._VelixianForms.FindForm("QUEST").Touch(); } }
public override void OnValueChanged(SourceGrid.CellContext sender, EventArgs e) { base.OnValueChanged(sender, e); SHQuest quest = (SHQuest)sender.Grid.Tag; if (quest == null) { return; } int selectedRow = sender.Position.Row; SourceGrid.Grid grid = (sender.Grid as SourceGrid.Grid); SHItemAddRemoveBase item = (SHItemAddRemoveBase)(grid.Rows[selectedRow].Tag); if (sender.Position.Column == 0) { SHItemAddRemoveBase newItem = SHItemAddRemove.NewItem((SHItemAddRemoveType)sender.Value); newItem.id = item.id; newItem.amount = item.amount; quest.Items.dataList[selectedRow - 1] = newItem; } else if (sender.Position.Column == 1) { item.id = (int)sender.Value; } else if (sender.Position.Column == 2) { item.amount = (int)sender.Value; } m_GridController.RefreshPropertyGrid(selectedRow); Global._VelixianForms.FindForm("QUEST").Touch(); }
protected override bool CheckFilter(SHDataObject dataObject, string strHead, string strFilter) { SHQuest quest = (SHQuest)(dataObject); if (strHead.ToLower() == "id") { return(ExistFilterString(strFilter, quest.id.ToString())); } if (strHead.ToLower() == "title" || strHead == "제목") { return(ExistFilterString(strFilter, quest.title)); } if (strHead.ToLower() == "category" || strHead == "카테고리") { return(ExistFilterString(strFilter, quest.category)); } if (ExistFilterString(strFilter, quest.id.ToString())) { return(true); } if (ExistFilterString(strFilter, quest.title)) { return(true); } if (ExistFilterString(strFilter, quest.desc)) { return(true); } if (ExistFilterString(strFilter, quest.category)) { return(true); } return(false); }
public void DelItem() { if (MessageBox.Show("Are you sure you want to delete?", Application.ProductName, MessageBoxButtons.YesNo) == DialogResult.Yes) { int selectedRow = -1; selectedRow = m_Grid.Selection.ActivePosition.Row; if (selectedRow < 0) { return; } SHQuest quest = (SHQuest)m_Grid.Tag; SHItemAddRemoveBase obj = (SHItemAddRemoveBase)m_Grid.Rows[selectedRow].Tag; if (quest != null && obj != null) { quest.Items.dataList.Remove(obj); AssignGrid(quest); Global._VelixianForms.FindForm("QUEST").Touch(); } } }