internal EditControl(DetailsTemplateControl.ControlFlags controlFlags) { this.UseSystemPasswordChar = ((controlFlags & DetailsTemplateControl.ControlFlags.UseSystemPasswordChar) != (DetailsTemplateControl.ControlFlags) 0U); this.ReadOnly = ((controlFlags & DetailsTemplateControl.ControlFlags.ReadOnly) == (DetailsTemplateControl.ControlFlags) 0U); this.Multiline = ((controlFlags & DetailsTemplateControl.ControlFlags.Multiline) != (DetailsTemplateControl.ControlFlags) 0U); this.ConfirmationRequired = ((controlFlags & DetailsTemplateControl.ControlFlags.ConfirmationRequired) != (DetailsTemplateControl.ControlFlags) 0U); }
internal override DetailsTemplateControl.ControlFlags GetControlFlags() { DetailsTemplateControl.ControlFlags originalFlags = this.OriginalFlags; DetailsTemplateControl.SetBitField(!this.ReadOnly, DetailsTemplateControl.ControlFlags.ReadOnly, ref originalFlags); DetailsTemplateControl.SetBitField(this.Multiline, DetailsTemplateControl.ControlFlags.Multiline, ref originalFlags); DetailsTemplateControl.SetBitField(this.UseSystemPasswordChar, DetailsTemplateControl.ControlFlags.UseSystemPasswordChar, ref originalFlags); DetailsTemplateControl.SetBitField(this.ConfirmationRequired, DetailsTemplateControl.ControlFlags.ConfirmationRequired, ref originalFlags); return(originalFlags); }
internal static void SetBitField(bool setBit, DetailsTemplateControl.ControlFlags currentBit, ref DetailsTemplateControl.ControlFlags bitField) { if (setBit) { bitField |= currentBit; return; } bitField &= ~currentBit; }
internal override DetailsTemplateControl.ControlFlags GetControlFlags() { DetailsTemplateControl.ControlFlags originalFlags = this.OriginalFlags; bool flag = this.scrollBars == ScrollBars.Both || this.scrollBars == ScrollBars.Vertical; bool flag2 = this.scrollBars == ScrollBars.Both || this.scrollBars == ScrollBars.Horizontal; DetailsTemplateControl.SetBitField(!flag, DetailsTemplateControl.ControlFlags.ReadOnly, ref originalFlags); DetailsTemplateControl.SetBitField(!flag2, DetailsTemplateControl.ControlFlags.Multiline, ref originalFlags); return(originalFlags); }
internal ListboxControl(DetailsTemplateControl.ControlFlags controlFlags) { bool flag = (controlFlags & DetailsTemplateControl.ControlFlags.ReadOnly) == (DetailsTemplateControl.ControlFlags) 0U; bool flag2 = (controlFlags & DetailsTemplateControl.ControlFlags.Multiline) == (DetailsTemplateControl.ControlFlags) 0U; if (flag2 && flag) { this.scrollBars = ScrollBars.Both; return; } if (flag2) { this.scrollBars = ScrollBars.Horizontal; return; } if (flag) { this.scrollBars = ScrollBars.Vertical; return; } this.scrollBars = ScrollBars.None; }
private static void AddControl(uint[] data, byte[] blob, MultiValuedProperty <Page> pages, MAPIPropertiesDictionary propertiesDictionary) { int x = (int)data[0]; int y = (int)data[2]; int width = (int)data[1]; int height = (int)data[3]; int num = (int)data[8]; int maxLength = (int)data[7]; uint num2 = data[6]; DetailsTemplateControl.ControlFlags controlFlags = (DetailsTemplateControl.ControlFlags)data[5]; string attributeName = propertiesDictionary[(int)(num2 >> 16 & 65535U)] ?? string.Empty; string @string = Encoding.Unicode.GetString(blob, num, DetailsTemplateAdapter.GetNullTerminatedStringLength(blob, num)); DetailsTemplateControl detailsTemplateControl = null; switch (data[4]) { case 0U: detailsTemplateControl = new LabelControl(); break; case 1U: detailsTemplateControl = new EditControl(controlFlags); break; case 2U: detailsTemplateControl = new ListboxControl(controlFlags); break; case 5U: detailsTemplateControl = new CheckboxControl(); break; case 6U: detailsTemplateControl = new GroupboxControl(); break; case 7U: detailsTemplateControl = new ButtonControl(); break; case 8U: pages.Add(new Page { Text = @string, HelpContext = (int)controlFlags }); break; case 11U: detailsTemplateControl = new MultiValuedListboxControl(); break; case 12U: detailsTemplateControl = new MultiValuedDropdownControl(); break; } if (detailsTemplateControl != null) { if (pages.Count == 0) { throw new ParsingException(DirectoryStrings.NoPagesSpecified); } detailsTemplateControl.X = x; detailsTemplateControl.Y = y; detailsTemplateControl.Width = width; detailsTemplateControl.Height = height; detailsTemplateControl.m_MaxLength = maxLength; detailsTemplateControl.m_AttributeName = attributeName; detailsTemplateControl.m_Text = @string; detailsTemplateControl.OriginalFlags = controlFlags; pages[pages.Count - 1].Controls.Add(detailsTemplateControl); } }