Example #1
0
        public TextArrayItem(byte[] bytes, TextArrayGroupInfo groupInfo, TextArrayItemInfo info) : base(bytes, groupInfo)
        {
            ItemInfo = info;

            // Remove empty chars at the end of ascii text
            if (groupInfo.Encoding == System.Text.Encoding.ASCII)
            {
                Text = Text.TrimEnd();
            }
        }
Example #2
0
        private void UpdateSelectedArrayItemInfoListItem()
        {
            var baseItem = ItemListBox1.SelectedItem;
            TextArrayItemInfo arrayItem = (TextArrayItemInfo)baseItem?.Tag;

            if (arrayItem is object)
            {
                baseItem.Text = Conversions.ToString(arrayItem.RomAddress);
                ItemListBox1.Refresh();
            }
        }
Example #3
0
        private void RemoveArrayItemInfo(BaseItem item)
        {
            TextArrayItemInfo  tarrinfo = (TextArrayItemInfo)item.Tag;
            TextArrayGroupInfo group    = (TextArrayGroupInfo)GetSelectedGroupInfo();

            if (group is object)
            {
                ItemListBox1.Items.Remove(item);
                group.Texts.Remove(tarrinfo);
            }
        }
Example #4
0
        private void AddArrayItemInfo()
        {
            var item = new TextArrayItemInfo();
            TextArrayGroupInfo group = (TextArrayGroupInfo)GetSelectedGroupInfo();

            group.Texts.Add(item);
            var btn = AddArrayItemListItem(item);

            ItemListBox1.Items.Add(btn);
            ItemListBox1.Refresh();
        }
Example #5
0
        private ButtonItem AddArrayItemListItem(TextArrayItemInfo item)
        {
            var btn = new ButtonItem()
            {
                Text = Conversions.ToString(item.RomAddress),
                Tag  = item
            };

            ItemListBox1.Items.Add(btn);
            return(btn);
        }
        private TextArrayItem GetTextItem(BinaryData data, TextArrayItemInfo info)
        {
            byte tempByte   = 0;
            var  byteBuffer = new List <byte>();
            bool ende       = false;

            data.Position = info.RomAddress;
            while (!ende)
            {
                tempByte = data.ReadByte();
                byteBuffer.Add(tempByte);
                if (byteBuffer.Count >= info.MaxLength || TextGroupInfo.Encoding == M64TextEncoding.M64Text && tempByte == 0xFF)
                {
                    ende = true;
                }
            }

            var newItem = new TextArrayItem(byteBuffer.ToArray(), TextGroupInfo, info);

            byteBuffer.Clear();
            return(newItem);
        }
Example #7
0
 private void LoadArrayItem(TextArrayItemInfo item)
 {
     LoadPropertiesToEdit(item);
 }