Example #1
0
        public void NameAddress(uint address, string name = null)
        {
            if (string.IsNullOrWhiteSpace(name))
            {
                NamingDialog dlg = new NamingDialog
                {
                    Text = $"Label RAM:{address:X4}..."
                };
                if (Project.Namer.Names.ContainsKey(address))
                {
                    dlg.NameString = Project.Namer.Names[address];
                }

                if (dlg.ShowDialog() == DialogResult.Cancel)
                {
                    return;
                }

                name = dlg.NameString;
            }

            if (string.IsNullOrWhiteSpace(name))
            {
                Project.Namer.Names.Remove(address);
            }
            else
            {
                Project.Namer.Names[address] = name;
            }

            ChangeMade?.Invoke(this, null);
        }
Example #2
0
 public static void OnSongInSongViewChanged(ISongView sender, ChangeMade change)
 {
     if (SongInSongViewChanged != null)
     {
         SongInSongViewChanged(sender, new SongChangeEventArgs(change));
     }
 }
Example #3
0
        public void CommentOffset(uint offset, string label = null)
        {
            if (string.IsNullOrWhiteSpace(label))
            {
                NamingDialog dlg = new NamingDialog
                {
                    Text = $"Comment ROM{new BankedAddress(offset).ToString()}..."
                };
                if (Project.Comments.ContainsKey(offset))
                {
                    dlg.NameString = Project.Comments[offset];
                }

                if (dlg.ShowDialog() == DialogResult.Cancel)
                {
                    return;
                }

                label = dlg.NameString;
            }

            if (string.IsNullOrWhiteSpace(label))
            {
                Project.Comments.Remove(offset);
            }
            else
            {
                Project.Comments[offset] = label;
            }

            ChangeMade?.Invoke(this, null);
        }
Example #4
0
 public void ForceData(uint offset)
 {
     if (Project.Instructions.ContainsKey(offset))
     {
         Project.Instructions.Remove(offset);
         ChangeMade?.Invoke(this, null);
     }
 }
Example #5
0
        public void LoadProject(Disassembler project, bool isNew = false)
        {
            Project = project;
            CloseToolStripMenuItem.Enabled = true;
            SaveToolStripMenuItem.Enabled  = true;
            Code.Project = project;
            UpdateTitleBar();
            UpdateLabels();

            ProjectLoaded?.Invoke(this, null);
            if (isNew)
            {
                ChangeMade?.Invoke(this, null);
            }
        }
Example #6
0
 void InvokeChangeMade(ChangeEventArgs e)
 {
     ChangeMade?.Invoke(this, e);
 }
Example #7
0
 private void Code_Data(object sender, DataEventArgs e)
 {
     Project.DataTypes[e.Location] = e.Type;
     ChangeMade?.Invoke(this, null);
 }
Example #8
0
 private void Code_Replace(object sender, ReplaceEventArgs e)
 {
     Project.AddCustomOperand(e.Location, e.Index, e.Operand);
     ChangeMade?.Invoke(this, null);
 }
Example #9
0
 public void Analyse(uint offset)
 {
     Project.Analyse(offset, true);
     ChangeMade?.Invoke(this, null);
 }
Example #10
0
 public SongChangeEventArgs()
 {
     _change = ChangeMade.Defauld;
 }
Example #11
0
 public SongChangeEventArgs(ChangeMade change)
 {
     _change = change;
 }
Example #12
0
 If(ChangeMade)
 UpdateXMLFlatFile()