Example #1
0
        private DataGridView getDGV(InventoryPouch pouch)
        {
            // Add DataGrid
            DataGridView dgv = new DataGridView
            {
                Dock = DockStyle.Fill,
                Text = pouch.Type.ToString(),
                Name = DGVPrefix + pouch.Type,

                AllowUserToAddRows       = false,
                AllowUserToDeleteRows    = false,
                AllowUserToResizeRows    = false,
                AllowUserToResizeColumns = false,
                RowHeadersVisible        = false,
                ColumnHeadersVisible     = false,
                MultiSelect     = false,
                ShowEditingIcon = false,

                EditMode = DataGridViewEditMode.EditOnEnter,
                ColumnHeadersBorderStyle    = DataGridViewHeaderBorderStyle.Single,
                ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize,
                SelectionMode   = DataGridViewSelectionMode.CellSelect,
                CellBorderStyle = DataGridViewCellBorderStyle.None,
            };

            DataGridViewComboBoxColumn dgvItemVal = new DataGridViewComboBoxColumn
            {
                DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing,
                DisplayIndex = 0,
                Width        = 135,
                FlatStyle    = FlatStyle.Flat
            };
            DataGridViewColumn dgvIndex = new DataGridViewTextBoxColumn();

            {
                dgvIndex.HeaderText   = "CNT";
                dgvIndex.DisplayIndex = 1;
                dgvIndex.Width        = 45;
                dgvIndex.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            }

            dgv.Columns.Add(dgvItemVal);
            dgv.Columns.Add(dgvIndex);

            var itemcount = pouch.Items.Length;

            string[] itemarr = Main.HaX ? (string[])itemlist.Clone() : getItems(pouch.LegalItems);

            var combo = dgv.Columns[0] as DataGridViewComboBoxColumn;

            foreach (string t in itemarr)
            {
                combo.Items.Add(t); // add only the Item Names
            }
            dgv.Rows.Add(itemcount > 0 ? itemcount : itemarr.Length);
            dgv.CancelEdit();

            return(dgv);
        }
Example #2
0
 private void getBag(DataGridView dgv, InventoryPouch pouch)
 {
     for (int i = 0; i < dgv.Rows.Count; i++)
     {
         dgv.Rows[i].Cells[0].Value = itemlist[pouch.Items[i].Index];
         dgv.Rows[i].Cells[1].Value = pouch.Items[i].Count;
     }
 }
Example #3
0
        private void setBag(DataGridView dgv, InventoryPouch pouch)
        {
            int ctr = 0;

            for (int i = 0; i < dgv.Rows.Count; i++)
            {
                int    c         = 0;
                string item      = dgv.Rows[i].Cells[c++].Value.ToString();
                int    itemindex = Array.IndexOf(itemlist, item);
                if (itemindex <= 0) // Compression of Empty Slots
                {
                    continue;
                }

                int itemcnt;
                int.TryParse(dgv.Rows[i].Cells[c++].Value.ToString(), out itemcnt);

                if (Main.HaX && SAV.Generation != 7) // Gen7 has true cap at 1023, keep 999 cap.
                {
                    // Cap at absolute maximum
                    if (SAV.Generation <= 2 && itemcnt > byte.MaxValue)
                    {
                        itemcnt = byte.MaxValue;
                    }
                    else if (SAV.Generation >= 3 && itemcnt > ushort.MaxValue)
                    {
                        itemcnt = ushort.MaxValue;
                    }
                }
                else if (itemcnt > pouch.MaxCount)
                {
                    itemcnt = pouch.MaxCount; // Cap at pouch maximum
                }
                else if (itemcnt <= 0)
                {
                    continue; // ignore item
                }
                pouch.Items[ctr] = new InventoryItem {
                    Index = itemindex, Count = itemcnt
                };
                if (HasFreeSpace)
                {
                    pouch.Items[ctr].FreeSpace = (bool)dgv.Rows[i].Cells[c++].Value;
                }
                if (HasNew)
                {
                    pouch.Items[ctr].New = (bool)dgv.Rows[i].Cells[c].Value;
                }
                ctr++;
            }
            for (int i = ctr; i < pouch.Items.Length; i++)
            {
                pouch.Items[i] = new InventoryItem(); // Empty Slots at the end
            }
        }
Example #4
0
 private void getBag(DataGridView dgv, InventoryPouch pouch)
 {
     for (int i = 0; i < dgv.Rows.Count; i++)
     {
         int c = 0;
         dgv.Rows[i].Cells[c++].Value = itemlist[pouch.Items[i].Index];
         dgv.Rows[i].Cells[c++].Value = pouch.Items[i].Count;
         if (HasFreeSpace)
         {
             dgv.Rows[i].Cells[c++].Value = pouch.Items[i].FreeSpace;
         }
         if (HasNew)
         {
             dgv.Rows[i].Cells[c].Value = pouch.Items[i].New;
         }
     }
 }