Пример #1
0
 private void UpdateDataForBankTable(object sender, System.Timers.ElapsedEventArgs e)
 {
     LoadDataForBankList(true);
     BankListBox.Invoke(new MethodInvoker(delegate {
         BankListBox.Invalidate();
     }));
 }
Пример #2
0
        private void LoadDataForBankTable()
        {
            BankListBox.Invoke(new MethodInvoker(delegate {
                BankListBox.Items.Clear();
            }));

            DisplayedBankItems = RetreaveXMLPendingSubmissions();

            if (m_SelectedBankTab < m_Bank.BankTabs.Count)
            {
                if (m_Bank.BankTabs[m_SelectedBankTab].ItemsDictionary == null)
                {
                    return;
                }

                int count = m_Bank.BankTabs[m_SelectedBankTab].ItemsDictionary.Count;

                foreach (Item item in m_Bank.BankTabs[m_SelectedBankTab].ItemsDictionary.Values)
                {
                    DisplayedBankItems.Add(item);
                }
            }

            int row = 0;

            foreach (Item item in DisplayedBankItems)
            {
                BankListBox.Invoke(new MethodInvoker(delegate {
                    BankListBox.Items.Add(item.StackSize + "\t::\t" + item.Name);
                }));

                row++;
            }
        }
Пример #3
0
        async public void LoadDataForBankList(bool UpdateTable = false)
        {
            HttpClient client = new HttpClient();
            string     path   = "https://localhost:44320//api";

            path += "//Bank//" + Convert.ToInt32(User.Instance.Rank);
            string retsz = "";

            try
            {
                retsz = await client.GetStringAsync(path);
            }
            catch
            {
                MessageBox.Show("There was an issue, Try again later.", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            var bank = JsonConvert.DeserializeObject <Bank>(retsz);

            m_Bank = bank;

            int count = m_Bank.BankTabs.Count;

            TabComboBox.Invoke(new MethodInvoker(delegate {
                TabComboBox.Items.Clear();
            }));
            for (int index = 0; index < count; index++)
            {
                string name = m_Bank.BankTabs[index].Name;
                if (name == "Tab")
                {
                    name += " " + index.ToString();
                }

                TabComboBox.Invoke(new MethodInvoker(delegate {
                    TabComboBox.Items.Add(name);
                }));
            }
            TabComboBox.Invoke(new MethodInvoker(delegate {
                TabComboBox.SelectedIndex = 0;
            }));

            LoadDataForItem(m_Bank.BankTabs[0].ItemsDictionary.First().Value.ItemID);

            BankListBox.Invoke(new MethodInvoker(delegate {
                BankListBox.SelectedIndex = 0;
            }));

            if (UpdateTable)
            {
                LoadDataForBankTable();
            }
        }
Пример #4
0
        public void HandleEvent <T>(string eventName, T obj)
        {
            if (eventName == "LoginEvent")
            {
                MainTabControl.Visible = true;
                LoadDataForBankList();

                if (User.Instance.Rank == MemberRanks.GUILD_MASTER)
                {
                    ManageBankTabButton.Visible = true;
                    AddBankTabButton.Visible    = true;
                    NewTabNameTextBox.Visible   = true;
                    AddonPathTextBox.Visible    = true;
                    FolderDialButton.Visible    = true;
                    BankItemManage.Visible      = true;
                    ManagementToolsBox.Visible  = true;
                    BankKeyLabel.Visible        = true;
                    BankKeyTextBox.Visible      = true;
                    ChangeBankKeyButton.Visible = true;
                    AddonPathLabel.Visible      = true;

                    EventItemsList.SelectionMode = SelectionMode.One;

                    m_PollPendingTimer           = new System.Timers.Timer(50000); // 1 sec = 1000, 60 sec = 60000
                    m_PollPendingTimer.AutoReset = true;
                    m_PollPendingTimer.Elapsed  += new System.Timers.ElapsedEventHandler(UpdateDataForBankTable);
                    m_PollPendingTimer.Start();

                    GetBankKey();
                }
            }
            if (eventName == "BankItemSelected")
            {
                LoadDataForItem((obj as Item).ItemID);
            }
            if (eventName == "DeleteFromBank")
            {
                DeleteItemFromBank(TabComboBox.SelectedIndex, (obj as Item).ItemID, (obj as Item).StackSize);
                LoadDataForBankList(true);
                BankListBox.Invalidate();
            }
            if (eventName == "ApprovePending")
            {
                // update document
                RemoveItemFromPendingXML((obj as Item));
                // add to bank
                SendItemToBank((obj as Item), (obj as Item).StackSize);
                // refresh list
                LoadDataForBankList(true);

                BankListBox.Invalidate();
            }
            if (eventName == "RefreshBankList")
            {
                LoadDataForBankList(true);
                BankListBox.Invalidate();
            }
            if (eventName == "DeleteFromEvent")
            {
                RemoveItemFromEvent((obj as Item).Name);
            }
            if (eventName == "RefreshEventData")
            {
                LoadUserForEvent();
            }
        }