private PropertyManagerPageOptionBox CreateOptionBoxControl(ControlOptionsAttribute opts, IAttributeSet atts, ControlCreatorDelegate creator) { var options = EnumExtension.GetEnumFields(atts.BoundType); var ctrls = new IPropertyManagerPageOption[options.Count]; for (int i = 0; i < options.Count; i++) { var name = options.ElementAt(i).Value; ctrls[i] = creator.Invoke(atts.Id + i, (short)swPropertyManagerPageControlType_e.swControlType_Option, name, (short)opts.Align, (short)opts.Options, atts.Description); } return(new PropertyManagerPageOptionBox(ctrls)); }
//Controls are displayed on the page top to bottom in the order //in which they are added to the object. protected void AddControls() { short controlType = -1; short align = -1; int options = -1; //Add the groups options = (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Expanded | (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Visible; group1 = (IPropertyManagerPageGroup)swPropertyPage.AddGroupBox(group1ID, "Sample Group 1", options); options = (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Checkbox | (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Visible; group2 = (IPropertyManagerPageGroup)swPropertyPage.AddGroupBox(group2ID, "Sample Group 2", options); //Add the controls to group1 //textbox1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Textbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; textbox1 = (IPropertyManagerPageTextbox)group1.AddControl(textbox1ID, controlType, "Type Here", align, options, "This is an example textbox"); //checkbox1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Checkbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; checkbox1 = (IPropertyManagerPageCheckbox)group1.AddControl(checkbox1ID, controlType, "Sample Checkbox", align, options, "This is a sample checkbox"); //option1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Option; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; option1 = (IPropertyManagerPageOption)group1.AddControl(option1ID, controlType, "Option1", align, options, "Radio Buttons"); //option2 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Option; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; option2 = (IPropertyManagerPageOption)group1.AddControl(option2ID, controlType, "Option2", align, options, "Radio Buttons"); //option3 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Option; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; option3 = (IPropertyManagerPageOption)group1.AddControl(option3ID, controlType, "Option3", align, options, "Radio Buttons"); //list1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Listbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; list1 = (IPropertyManagerPageListbox)group1.AddControl(list1ID, controlType, "Sample Listbox", align, options, "List of selectable items"); if (list1 != null) { string[] items = { "One Fish", "Two Fish", "Red Fish", "Blue Fish" }; list1.Height = 50; list1.AddItems(items); } //Add controls to group2 //selection1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Selectionbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; selection1 = (IPropertyManagerPageSelectionbox)group2.AddControl(selection1ID, controlType, "Sample Selection", align, options, "Displays features selected in main view"); if (selection1 != null) { int[] filter = { (int)swSelectType_e.swSelEDGES, (int)swSelectType_e.swSelVERTICES }; selection1.Height = 40; selection1.SetSelectionFilters(filter); } //num1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Numberbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; num1 = (IPropertyManagerPageNumberbox)group2.AddControl(num1ID, controlType, "Sample Numberbox", align, options, "Allows for numerical input"); if (num1 != null) { num1.Value = 50.0; num1.SetRange((int)swNumberboxUnitType_e.swNumberBox_UnitlessDouble, 0.0, 100.0, 0.01, true); } //combo1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Combobox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; combo1 = (IPropertyManagerPageCombobox)group2.AddControl(combo1ID, controlType, "Sample Combobox", align, options, "Combo list"); if (combo1 != null) { string[] items = { "One Fish", "Two Fish", "Red Fish", "Blue Fish" }; combo1.AddItems(items); combo1.Height = 50; } }
//Controls are displayed on the page top to bottom in the order //in which they are added to the object. protected void AddControls() { short controlType = -1; short align = -1; int options = -1; bool retval; //Add Message retval = swPropertyPage.SetMessage3("This is a sample message, marked yellow to signify importance.", (int)swPropertyManagerPageMessageVisibility.swImportantMessageBox, (int)swPropertyManagerPageMessageExpanded.swMessageBoxExpand, "Sample Important Caption"); // Add PropertyManager Page Tabs ppagetab1 = swPropertyPage.AddTab(tabID1, "Page Tab 1", "", 0); ppagetab2 = swPropertyPage.AddTab(tabID2, "Page Tab 2", "", 0); //Add the groups options = (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Expanded | (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Visible; group1 = (IPropertyManagerPageGroup)ppagetab1.AddGroupBox(group1ID, "Sample Group 1", options); options = (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Checkbox | (int)swAddGroupBoxOptions_e.swGroupBoxOptions_Visible; group2 = (IPropertyManagerPageGroup)ppagetab1.AddGroupBox(group2ID, "Sample Group 2", options); //Add the controls to group1 //textbox1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Textbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; textbox1 = (IPropertyManagerPageTextbox)group1.AddControl(textbox1ID, controlType, "Type Here", align, options, "This is an example textbox"); //checkbox1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Checkbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; checkbox1 = (IPropertyManagerPageCheckbox)group1.AddControl(checkbox1ID, controlType, "Sample Checkbox", align, options, "This is a sample checkbox"); //option1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Option; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; option1 = (IPropertyManagerPageOption)group1.AddControl(option1ID, controlType, "Option1", align, options, "Radio Buttons"); //option2 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Option; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; option2 = (IPropertyManagerPageOption)group1.AddControl(option2ID, controlType, "Option2", align, options, "Radio Buttons"); //option3 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Option; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; option3 = (IPropertyManagerPageOption)group1.AddControl(option3ID, controlType, "Option3", align, options, "Radio Buttons"); //list1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Listbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; list1 = (IPropertyManagerPageListbox)group1.AddControl(list1ID, controlType, "Sample Listbox", align, options, "List of selectable items"); if (list1 != null) { string[] items = { "One Fish", "Two Fish", "Red Fish", "Blue Fish" }; list1.Height = 50; list1.AddItems(items); } //Add controls to group2 //selection1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Selectionbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; selection1 = (IPropertyManagerPageSelectionbox)group2.AddControl(selection1ID, controlType, "Sample Selection", align, options, "Displays features selected in main view"); if (selection1 != null) { int[] filter = { (int)swSelectType_e.swSelEDGES, (int)swSelectType_e.swSelVERTICES }; selection1.Height = 40; selection1.SetSelectionFilters(filter); } //num1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Numberbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; num1 = (IPropertyManagerPageNumberbox)group2.AddControl(num1ID, controlType, "Sample Numberbox", align, options, "Allows for numerical input"); if (num1 != null) { num1.Value = 50.0; num1.SetRange((int)swNumberboxUnitType_e.swNumberBox_UnitlessDouble, 0.0, 100.0, 0.01, true); } //combo1 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Combobox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; combo1 = (IPropertyManagerPageCombobox)group2.AddControl(combo1ID, controlType, "Sample Combobox", align, options, "Combo list"); if (combo1 != null) { string[] items = { "One Fish", "Two Fish", "Red Fish", "Blue Fish" }; combo1.AddItems(items); combo1.Height = 50; } // Button controlType = (int)swPropertyManagerPageControlType_e.swControlType_Button; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; button1 = (IPropertyManagerPageButton)group2.AddControl2(buttonID1, controlType, "Hide", align, options, "Change the visibility of the control"); // Textbox2 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Textbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_Indent; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; textbox2 = (IPropertyManagerPageTextbox)group2.AddControl2(textbox2ID, controlType, "Sample Textbox", align, options, "Sample Textbox text"); // Button controlType = (int)swPropertyManagerPageControlType_e.swControlType_Button; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_LeftEdge; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; button2 = (IPropertyManagerPageButton)group2.AddControl2(buttonID2, controlType, "Disable", align, options, "Disable the control"); // Textbox3 controlType = (int)swPropertyManagerPageControlType_e.swControlType_Textbox; align = (int)swPropertyManagerPageControlLeftAlign_e.swControlAlign_Indent; options = (int)swAddControlOptions_e.swControlOptions_Enabled | (int)swAddControlOptions_e.swControlOptions_Visible; textbox3 = (IPropertyManagerPageTextbox)group2.AddControl2(textbox3ID, controlType, "Another sample Textbox", align, options, "Second Sample Textbox text"); }
public IPropertyManagerPageOptionObject(IPropertyManagerPageOption IPropertyManagerPageOptioninstance) { IPropertyManagerPageOptionInstance = IPropertyManagerPageOptioninstance; }