コード例 #1
0
ファイル: RamWatch.cs プロジェクト: budzikt/BizHawk
        private void ListViewContextMenu_Opening(object sender, CancelEventArgs e)
        {
            var indexes = WatchListView.SelectedIndices;

            EditContextMenuItem.Visible                   =
                RemoveContextMenuItem.Visible             =
                    DuplicateContextMenuItem.Visible      =
                        PokeContextMenuItem.Visible       =
                            FreezeContextMenuItem.Visible =
                                Separator4.Visible        =
                                    ReadBreakpointContextMenuItem.Visible      =
                                        WriteBreakpointContextMenuItem.Visible =
                                            Separator6.Visible =
                                                InsertSeperatorContextMenuItem.Visible  =
                                                    MoveUpContextMenuItem.Visible       =
                                                        MoveDownContextMenuItem.Visible =
                                                            indexes.Count > 0;

            ReadBreakpointContextMenuItem.Visible      =
                WriteBreakpointContextMenuItem.Visible =
                    Separator6.Visible =
                        SelectedWatches.Any() &&
                        _debuggable != null &&
                        _debuggable.MemoryCallbacksAvailable() &&
                        SelectedWatches.All(w => w.Domain.Name == (_memoryDomains != null ? _memoryDomains.SystemBus.Name : ""));

            PokeContextMenuItem.Enabled       =
                FreezeContextMenuItem.Visible =
                    SelectedIndices.Any() &&
                    SelectedWatches.All(w => w.Domain.CanPoke());

            var allCheats = _watches.All(x => Global.CheatList.IsActive(x.Domain, x.Address));

            if (allCheats)
            {
                FreezeContextMenuItem.Text  = "&Unfreeze Address";
                FreezeContextMenuItem.Image = Properties.Resources.Unfreeze;
            }
            else
            {
                FreezeContextMenuItem.Text  = "&Freeze Address";
                FreezeContextMenuItem.Image = Properties.Resources.Freeze;
            }

            UnfreezeAllContextMenuItem.Visible = Global.CheatList.ActiveCount > 0;

            ViewInHexEditorContextMenuItem.Visible = SelectedWatches.Count() == 1;

            newToolStripMenuItem.Visible = indexes.Count == 0;
        }
コード例 #2
0
        public void Restart()
        {
            if ((!IsHandleCreated || IsDisposed) && !Global.Config.DisplayRamWatch)
            {
                return;
            }

            if (_watches != null &&
                !string.IsNullOrWhiteSpace(_watches.CurrentFileName) &&
                _watches.All(w => _memoryDomains.Contains(w.Domain)))
            {
                _watches.RefreshDomains(_memoryDomains);
                _watches.Reload();
                UpdateStatusBar();
            }
            else
            {
                _watches = new WatchList(_memoryDomains, _emu.SystemId);
                NewWatchList(true);
            }
        }
コード例 #3
0
ファイル: RamWatch.cs プロジェクト: mrjnumber1/BizHawk
        public void Restart()
        {
            if ((!IsHandleCreated || IsDisposed) && !Global.Config.DisplayRamWatch)
            {
                return;
            }

            if (_watches != null &&
                !string.IsNullOrWhiteSpace(_watches.CurrentFileName) &&
                _watches.All(w => w.Domain == null || MemoryDomains.Select(m => m.Name).Contains(w.Domain.Name)) &&
                (Global.Config.RecentWatches.AutoLoad || (IsHandleCreated || !IsDisposed)))
            {
                _watches.RefreshDomains(MemoryDomains);
                _watches.Reload();
                UpdateStatusBar();
            }
            else
            {
                _watches = new WatchList(MemoryDomains, Emu.SystemId);
                NewWatchList(true);
            }
        }
コード例 #4
0
ファイル: RamWatch.cs プロジェクト: stuff2600/RAEmus
        private void ListViewContextMenu_Opening(object sender, CancelEventArgs e)
        {
            var indexes = WatchListView.SelectedIndices;

            EditContextMenuItem.Visible                   =
                RemoveContextMenuItem.Visible             =
                    DuplicateContextMenuItem.Visible      =
                        PokeContextMenuItem.Visible       =
                            FreezeContextMenuItem.Visible =
                                Separator6.Visible        =
                                    InsertSeperatorContextMenuItem.Visible      =
                                        MoveUpContextMenuItem.Visible           =
                                            MoveDownContextMenuItem.Visible     =
                                                Separator6.Visible              =
                                                    toolStripSeparator4.Visible =
                                                        indexes.Count > 0;

            var allCheats = _watches.All(x => Global.CheatList.IsActive(x.Domain, x.Address ?? 0));

            if (allCheats)
            {
                FreezeContextMenuItem.Text  = "&Unfreeze Address";
                FreezeContextMenuItem.Image = Properties.Resources.Unfreeze;
            }
            else
            {
                FreezeContextMenuItem.Text  = "&Freeze Address";
                FreezeContextMenuItem.Image = Properties.Resources.Freeze;
            }

            ShowChangeCountsContextMenuItem.Text  = Global.Config.RamWatchShowChangeColumn ? "Hide change counts" : "Show change counts";
            ShowPreviousValueContextMenuItem.Text = Global.Config.RamWatchShowPrevColumn ? "Hide previous value" : "Show previous value";
            ShowDiffContextMenuItem.Text          = Global.Config.RamWatchShowDiffColumn ? "Hide difference value" : "Show difference value";
            ShowDomainContextMenuItem.Text        = Global.Config.RamWatchShowDomainColumn ? "Hide domain" : "Show domain";

            UnfreezeAllContextMenuItem.Visible = Global.CheatList.ActiveCount > 0;

            ViewInHexEditorContextMenuItem.Visible = SelectedWatches.Count() == 1;
        }