public Principal(OnlineRadioTunnerSystem system) { InitializeComponent(); ContextMenu menu = BuildMenu(system); // prueba elemento personalidad /*MenuItem itm = new MenuItem("Custom Menu Item"); itm.DrawItem += new DrawItemEventHandler(itm_DrawItem); itm.OwnerDraw = true; menu.MenuItems.Add(itm);*/ notIcon.ContextMenu = menu; notIcon.Visible = true; notIcon.Text = "Ninguna emisora activa"; }
public Principal(OnlineRadioTunnerSystem system) { InitializeComponent(); ContextMenu menu = BuildMenu(system); // prueba elemento personalidad /*MenuItem itm = new MenuItem("Custom Menu Item"); * * itm.DrawItem += new DrawItemEventHandler(itm_DrawItem); * itm.OwnerDraw = true; * menu.MenuItems.Add(itm);*/ notIcon.ContextMenu = menu; notIcon.Visible = true; notIcon.Text = "Ninguna emisora activa"; }
private ContextMenu BuildMenu(OnlineRadioTunnerSystem system) { ContextMenu menu = new ContextMenu(); foreach (RadioStationGroup grp in system.Groups) { // creamos el primer nivel de menu MenuItem itm = new MenuItem(grp.Name); menu.MenuItems.Add(itm); // si solo tiene una estacion if (grp.Stations.Count == 1) { // añadimos el evento itm.Click += new EventHandler(change_radio_station); map_id_station[itm.Handle] = grp.Stations[0]; } else { MenuItem[] itm_arr = new MenuItem[grp.Stations.Count]; int i = 0; foreach (RadioStation rstn in grp.Stations) { itm_arr[i] = new MenuItem(rstn.Name); itm_arr[i].Click += new EventHandler(change_radio_station); map_id_station[itm_arr[i].Handle] = rstn; ++i; } itm.MenuItems.AddRange(itm_arr); } } // añadimos la opcion de salir MenuItem salir = new MenuItem("Salir"); salir.Click += new EventHandler(salir_click); menu.MenuItems.Add(salir); return(menu); }
private ContextMenu BuildMenu(OnlineRadioTunnerSystem system) { ContextMenu menu = new ContextMenu(); foreach (RadioStationGroup grp in system.Groups) { // creamos el primer nivel de menu MenuItem itm = new MenuItem(grp.Name); menu.MenuItems.Add(itm); // si solo tiene una estacion if (grp.Stations.Count == 1) { // añadimos el evento itm.Click += new EventHandler(change_radio_station); map_id_station[itm.Handle] = grp.Stations[0]; } else { MenuItem[] itm_arr = new MenuItem[grp.Stations.Count]; int i = 0; foreach (RadioStation rstn in grp.Stations) { itm_arr[i] = new MenuItem(rstn.Name); itm_arr[i].Click += new EventHandler(change_radio_station); map_id_station[itm_arr[i].Handle] = rstn; ++i; } itm.MenuItems.AddRange(itm_arr); } } // añadimos la opcion de salir MenuItem salir = new MenuItem("Salir"); salir.Click += new EventHandler(salir_click); menu.MenuItems.Add(salir); return menu; }
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); // PEQUEÑO TROZO DE CODIGO PARA SERIALIZAR LAS EMISORAS /*OnlineRadioTunnerSystem system = new OnlineRadioTunnerSystem(); * RadioStationGroup group = new RadioStationGroup("Onda Cero"); * group.Stations.Add(new RadioStation("OC - Sevilla", "mms://ondacerolivewm.fplive.net/ondacerowmlive-live/oc_sevilla", StationType.WMP)); * group.Stations.Add(new RadioStation("OC - Almeria", "mms://ondacerolivewm.fplive.net/ondacerowmlive-live/oc_almeria", StationType.WMP)); * system.Groups.Add(group); * * RadioStationGroup group2 = new RadioStationGroup("Marca"); * group2.Stations.Add(new RadioStation("M - Sevilla", "mms://reflector.marca.com:9054", StationType.WMP)); * * system.Groups.Add(group2); * * RadioStationGroup group3 = new RadioStationGroup("Canal Sur Radio"); * group3.Stations.Add(new RadioStation("CSR", "http://canalsurradio.rtva.stream.flumotion.com/rtva/canalsurradio_master.mp3.m3u", StationType.WMP)); * system.Groups.Add(group3); * * RadioStationGroup group4 = new RadioStationGroup("Rock and Gol"); * group4.Stations.Add(new RadioStation("R&G", "http://rockandgol.cope.stream.flumotion.com/cope/rockandgol.asf.asx", StationType.WMP)); * system.Groups.Add(group4); * * RadioStationGroup group5 = new RadioStationGroup("RNE"); * group5.Stations.Add(new RadioStation("Radio Nacional", "http://www.rtve.es/swf/3.0.33/RTVEPlayer.swf?assetID=3348_es_audios&location=radio&volume=0.75&autostart=true", StationType.FLASH)); * group5.Stations.Add(new RadioStation("Radio Clásica", "http://www.rtve.es/swf/3.0.33/RTVEPlayer.swf?assetID=3343_es_audios&location=radio&volume=0.75&autostart=true", StationType.FLASH)); * group5.Stations.Add(new RadioStation("Radio 3", "http://www.rtve.es/swf/3.0.33/RTVEPlayer.swf?assetID=3342_es_audios&location=radio&volume=0.75&autostart=true", StationType.FLASH)); * group5.Stations.Add(new RadioStation("Radio 4", "http://www.rtve.es/swf/3.0.33/RTVEPlayer.swf?assetID=3344_es_audios&location=radio&volume=0.75&autostart=true", StationType.FLASH)); * group5.Stations.Add(new RadioStation("Radio 5 Todo Noticias", "http://www.rtve.es/swf/3.0.33/RTVEPlayer.swf?assetID=3345_es_audios&location=radio&volume=0.75&autostart=true", StationType.FLASH)); * group5.Stations.Add(new RadioStation("Radio Exterior", "http://www.rtve.es/swf/3.0.33/RTVEPlayer.swf?assetID=3346_es_audios&location=radio&volume=0.75&autostart=true", StationType.FLASH)); * system.Groups.Add(group5); * * RadioStationGroup group6 = new RadioStationGroup("Cadena Ser"); * group6.Stations.Add(new RadioStation("CS - Sevilla", "http://194.169.201.177:8085/stream/prisacom_Sevilla", StationType.WMP)); * system.Groups.Add(group6); * * RadioStationGroup group7 = new RadioStationGroup("Cadena100"); * group7.Stations.Add(new RadioStation("C100", "http://cadena100.cope.stream.flumotion.com/cope/cadena100.flv.m3u", StationType.WMP)); * system.Groups.Add(group7); * * RadioStationGroup group8 = new RadioStationGroup("Europa FM"); * group8.Stations.Add(new RadioStation("EFM", "http://www.europafm.com/EuropaFM/swf/PlayerEFM-OSMF.swf?var1=http://www.antena3.com/player/europafm_streams.xml", StationType.FLASH)); * system.Groups.Add(group8); * * RadioStationGroup group9 = new RadioStationGroup("Los 40"); * group9.Stations.Add(new RadioStation("40", "http://player.streamtheworld.com/_players/unionradio/UnionRadio.swf?nocache=19%3A47%3A24%20GMT+0200%20%28Hora%20de%20verano%20romance%29&streamid=3993&callsign=LOS40", StationType.FLASH)); * system.Groups.Add(group9); * * RadioStationGroup group10 = new RadioStationGroup("MaximaFM"); * group10.Stations.Add(new RadioStation("MaximaFM", "http://player.streamtheworld.com/_players/unionradio/UnionRadio.swf?nocache=19%3A47%3A24%20GMT+0200%20%28Hora%20de%20verano%20romance%29", StationType.FLASH)); * system.Groups.Add(group10); * * XmlSerializer serializer = new XmlSerializer(typeof(OnlineRadioTunnerSystem)); * * StreamWriter w = new System.IO.StreamWriter("rstation.xml"); * serializer.Serialize(w, system); * w.Close();*/ XmlSerializer serializer = new XmlSerializer(typeof(OnlineRadioTunnerSystem)); StreamReader r = new StreamReader("rstation.xml"); OnlineRadioTunnerSystem system = (OnlineRadioTunnerSystem)serializer.Deserialize(r); r.Close(); Principal pfrm = new Principal(system); Application.Run(); }