private void setup_ma() |
{ |
// Intialize MA object |
ma_list = new sch_objects.MA_List(profile_list.Locationid, profile_list.Installerid); |
ma_add_menu = new Telerik.WinControls.UI.RadDropDownMenu(); |
ma_all_menu = new Telerik.WinControls.UI.RadDropDownMenu(); |
|
// Create RadioButton grouped list in groupbox to display primary button with radio, not selectable |
int count = ma_list.MA_list_forinstallerID.Rows.Count; |
Telerik.WinControls.UI.RadRadioButton[] radio_btn = new Telerik.WinControls.UI.RadRadioButton[count]; |
DataRow row; |
Telerik.WinControls.UI.RadMenuItem main_item; |
|
// Array of MA's in Installer Profile |
for (int i = 0; i < count; i++) |
{ |
row = ma_list.MA_list_forinstallerID.Rows[i]; |
radio_btn[i] = new Telerik.WinControls.UI.RadRadioButton(); |
radio_btn[i].Text = row["ma"].ToString(); |
radio_btn[i].Name = "rb" + radio_btn[i].Text; |
radio_btn[i].Location = new Point(12, 21 * (i+1)); |
if ((bool)row["primaryma"]) |
{ |
radio_btn[i].ToggleState = Telerik.WinControls.Enumerations.ToggleState.On; |
radio_btn[i].Text = radio_btn[i].Text + " [Primary]"; |
} |
// For Toggling Primary MA |
radio_btn[i].Click += new EventHandler(MA_Clicked); |
// For manually opening a right click context menu |
radio_btn[i].MouseDown += new MouseEventHandler(ma_radio_mousedown); |
} |
|
// Add "Add" button to group |
Telerik.WinControls.UI.RadMenuItem[] item = new Telerik.WinControls.UI.RadMenuItem[ma_list.MA_list_forlocid.Rows.Count]; |
int item_counter = 0; |
foreach (DataRow ma_row in ma_list.MA_list_forlocid.Rows) |
{ |
// Create MA's for add group |
item[item_counter] = new Telerik.WinControls.UI.RadMenuItem(); |
item[item_counter].Text = ma_row["ma"].ToString(); |
item[item_counter].Name = "RI" + ma_row["ma"].ToString(); |
item[item_counter].Click += new EventHandler(add_ma_click); |
foreach (Telerik.WinControls.UI.RadRadioButton radio in radio_btn) |
{ |
if (radio.Name == ma_row["ma"].ToString()) |
{ |
// Delete from group if they already exist in groupbox |
item[item_counter].Enabled = false; |
} |
} |
item_counter++; |
} |
// Menu MA "Add" Dropdown menu |
main_item = new Telerik.WinControls.UI.RadMenuItem("Add"); |
ma_add_menu.Items.Add(main_item); |
ma_all_menu.Items.Add(main_item); |
|
// Add MA Group to "Add" menuitem |
main_item.Items.AddRange(item); |
|
// Add "Remove MA" button to group, get MA by element location later |
Telerik.WinControls.UI.RadMenuItem sec_item = new Telerik.WinControls.UI.RadMenuItem("Remove MA"); |
sec_item.Click += new EventHandler(remove_ma_click); |
ma_all_menu.Items.Add(sec_item); |
|
ma_groupbox.MouseDown += new MouseEventHandler(ma_groupbox_MouseDown); |
ma_groupbox.Controls.AddRange(radio_btn); |
} |
|
void ma_radio_mousedown(object sender, MouseEventArgs e) |
{ |
if (e.Button == MouseButtons.Right) |
{ |
ma_all_menu.Show(ma_groupbox, e.Location); |
} |
} |
|
void ma_groupbox_MouseDown(object sender, MouseEventArgs e) |
{ |
if (e.Button == MouseButtons.Right) |
{ |
ma_add_menu.Show(ma_groupbox, e.Location); |
} |
} |