private void UpdateMainCommandButtons()

in src/AccessibilityInsights/MainWindowHelpers/ControlHelper.cs [191:225]


        private void UpdateMainCommandButtons()
        {
            if (this.CurrentPage != AppPage.Start)
            {
                this.ctrlNamedCommandbar.Visibility = Visibility.Visible;
            }

            this.btnHilighter.Visibility = this.CurrentPage == AppPage.CCA ? Visibility.Collapsed : Visibility.Visible;
            this.btnRefresh.Visibility = this.ctrlCurMode.IsRefreshEnabled ? Visibility.Visible : Visibility.Collapsed;
            this.btnSave.Visibility = this.ctrlCurMode.IsSaveEnabled ? Visibility.Visible : Visibility.Collapsed;
            this.btnLoad.Visibility = this.IsInSelectingState() ? Visibility.Visible : Visibility.Collapsed;
            this.tbComboboxLabel.Visibility = this.IsInSelectingState() ? Visibility.Visible : Visibility.Collapsed;
            this.btnTimer.Visibility = this.IsInSelectingState() ? Visibility.Visible : Visibility.Collapsed;
            this.cbSelectionScope.Visibility = this.IsInSelectingState() ? Visibility.Visible : Visibility.Collapsed;
            this.btnPause.Visibility = (this.CurrentPage == AppPage.Inspect) && (this.gridlayerConfig.Visibility == Visibility.Collapsed) ? Visibility.Visible : Visibility.Collapsed;

            // add n of m info to UIA name based on currently visible focusable controls
            var visibleCommands = new List<UIElement>();
            foreach (UIElement child in this.spCommandBar.Children)
            {
                if (child.Visibility == Visibility.Visible && child.Focusable)
                {
                    visibleCommands.Add(child);
                }
            }

            int count = 1;
            foreach (var elem in visibleCommands)
            {
                string name = elem.GetValue(AutomationProperties.NameProperty) as string;
                var len = name.IndexOf(':') == -1 ? name.Length : name.IndexOf(':');
                elem.SetValue(AutomationProperties.NameProperty, string.Format(CultureInfo.InvariantCulture, Properties.Resources.MainWindow_UpdateMainCommandButtons_0_1_of_2, name.Substring(0, len), count, visibleCommands.Count));
                count++;
            }
        }