private void UpdateControls() { // // General tab // applyButton.Enabled = mDirty; const string FLAGS = "CZIDXMVNE"; // flags, in order low to high, plus emu bit const string VALUES = "-?01"; StringBuilder sb = new StringBuilder(27); StatusFlags flags = WorkProps.EntryFlags; for (int i = 0; i < 9; i++) { // Want to show P reg flags (first 8) in conventional high-to-low order. int idx = (7 - i) + (i == 8 ? 9 : 0); int val = flags.GetBit((StatusFlags.FlagBits)idx); sb.Append(FLAGS[idx]); sb.Append(VALUES[val + 2]); sb.Append(' '); } currentFlagsLabel.Text = sb.ToString(); // // Project symbols tab // int symSelCount = projectSymbolsListView.SelectedIndices.Count; removeSymbolButton.Enabled = (symSelCount == 1); editSymbolButton.Enabled = (symSelCount == 1); // // Platform symbol files tab // int fileSelCount = symbolFilesListBox.SelectedIndices.Count; symbolFileRemoveButton.Enabled = (fileSelCount != 0); symbolFileUpButton.Enabled = (fileSelCount == 1 && symbolFilesListBox.SelectedIndices[0] != 0); symbolFileDownButton.Enabled = (fileSelCount == 1 && symbolFilesListBox.SelectedIndices[0] != symbolFilesListBox.Items.Count - 1); // // Extension Scripts tab // fileSelCount = extensionScriptsListBox.SelectedIndices.Count; extensionScriptRemoveButton.Enabled = (fileSelCount != 0); }
private void UpdateEntryFlags() { const string FLAGS = "CZIDXMVNE"; // flags, in order low to high, plus emu bit const string VALUES = "-?01"; StringBuilder sb = new StringBuilder(27); StatusFlags flags = mWorkProps.EntryFlags; for (int i = 0; i < 9; i++) { // Want to show P reg flags (first 8) in conventional high-to-low order. int idx = (7 - i) + (i == 8 ? 9 : 0); int val = flags.GetBit((StatusFlags.FlagBits)idx); sb.Append(FLAGS[idx]); sb.Append(VALUES[val + 2]); sb.Append(' '); } currentFlagsText.Text = sb.ToString(); }