private bool ParseUrlParameters(ActivityWindow activityWindow) { if (IsRunningOutOfBrowser) { return(false); } bool foundParam = false; if (queryString.ContainsKey(PARAMETER_ACTIVITY)) { activityWindow.LoadOptions(makeActivityUri(queryString[PARAMETER_ACTIVITY])); foundParam = true; } if (queryString.ContainsKey(PARAMETER_MEDIA)) { WaitTillNotBusy(activityWindow); //TODO: doesn't work (should wait for any activity to load first) MediaPlayerWindow w = new MediaPlayerWindow(); w.Width = activityWindow.Width; w.Height = activityWindow.Height - (activityWindow.ActivityView.ToolbarVisible ? 80 : 0); //TODO: should change this if/when activity toolbar is made vertical (have option to get ActualWidth/ActualHeight of activity toolbar) activityWindow.Container.AddWindowInViewCenter(w); w.MediaPlayerView.Source = makeClipUri(CLIPFLAIR_GALLERY_VIDEO, queryString[PARAMETER_MEDIA]); foundParam = true; } if (queryString.ContainsKey(PARAMETER_VIDEO)) { WaitTillNotBusy(activityWindow); //TODO: doesn't work (should wait for any activity to load first) MediaPlayerWindow w = new MediaPlayerWindow(); w.Width = activityWindow.Width; w.Height = activityWindow.Height - (activityWindow.ActivityView.ToolbarVisible ? 80 : 0); //TODO: should change this if/when activity toolbar is made vertical (have option to get ActualWidth/ActualHeight of activity toolbar) activityWindow.Container.AddWindowInViewCenter(w); w.MediaPlayerView.Source = makeClipUri(CLIPFLAIR_GALLERY_VIDEO, queryString[PARAMETER_VIDEO]); foundParam = true; } if (queryString.ContainsKey(PARAMETER_AUDIO)) { WaitTillNotBusy(activityWindow); //TODO: doesn't work (should wait for any activity to load first) MediaPlayerWindow w = new MediaPlayerWindow(); w.Width = activityWindow.Width; w.Height = 69; //Using small height since there's only audio //NOTE: if SMF skin changes this may not look ok activityWindow.Container.AddWindowInViewCenter(w); w.MediaPlayerView.VideoVisible = false; w.MediaPlayerView.Source = new Uri(new Uri(CLIPFLAIR_GALLERY_AUDIO), queryString[PARAMETER_AUDIO]); foundParam = true; } if (queryString.ContainsKey(PARAMETER_IMAGE)) { WaitTillNotBusy(activityWindow); //TODO: doesn't work (should wait for any activity to load first) ImageWindow w = new ImageWindow(); w.Width = activityWindow.Width; w.Height = activityWindow.Height - (activityWindow.ActivityView.ToolbarVisible ? 80 : 0); //TODO: should change this if/when activity toolbar is made vertical (have option to get ActualWidth/ActualHeight of activity toolbar) activityWindow.Container.AddWindowInViewCenter(w); w.ImageView.Source = new Uri(new Uri(CLIPFLAIR_GALLERY_IMAGE), queryString[PARAMETER_IMAGE]); foundParam = true; } if (queryString.ContainsKey(PARAMETER_GALLERY)) { WaitTillNotBusy(activityWindow); //TODO: doesn't work (should wait for any activity to load first) GalleryWindow w = new GalleryWindow(); w.Width = activityWindow.Width; w.Height = activityWindow.Height - (activityWindow.ActivityView.ToolbarVisible ? 80 : 0); //TODO: should change this if/when activity toolbar is made vertical (have option to get ActualWidth/ActualHeight of activity toolbar) activityWindow.Container.AddWindowInViewCenter(w); w.GalleryView.Source = makeGalleryUri(queryString[PARAMETER_GALLERY]); foundParam = true; } if (queryString.ContainsKey(PARAMETER_COLLECTION)) { WaitTillNotBusy(activityWindow); //TODO: doesn't work (should wait for any activity to load first) GalleryWindow w = new GalleryWindow(); w.Width = activityWindow.Width; w.Height = activityWindow.Height - (activityWindow.ActivityView.ToolbarVisible ? 80 : 0); //TODO: should change this if/when activity toolbar is made vertical (have option to get ActualWidth/ActualHeight of activity toolbar) activityWindow.Container.AddWindowInViewCenter(w); w.GalleryView.Source = makeGalleryUri(queryString[PARAMETER_COLLECTION]); foundParam = true; } //TODO: add ...PARAMETER_CAPTIONS, PARAMETER_COMPONENT, TEXT, MAP etc. return(foundParam); } //TODO: add CAPTIONS parameter to load .SRT/.TTS/.SSA and show it
private void OnShowControlWindow(string controlName) { this.Effect = new BlurEffect(); switch (controlName) { case "ContactsTree": var contactsTreeWindow = new ContactsTreeWindow(); contactsTreeWindow.ShowDialog(); break; case "ExpertPanel": var expertPanelWindow = new ExpertPanelWindow(); expertPanelWindow.ShowDialog(); break; case "ExpertPanel2": var expertPanelWindow2 = new ExpertPanelWindow2(); expertPanelWindow2.ShowDialog(); break; case "Timer": var timerWindow = new TimerWindow(); timerWindow.ShowDialog(); break; case "MusicPlayer": var musicPlayerWindow = new MusicPlayerWindow(); musicPlayerWindow.ShowDialog(); break; case "MediaPlayer": var mediaPlayerWindow = new MediaPlayerWindow(); mediaPlayerWindow.ShowDialog(); break; case "PeopleResourcePanel": var peopleResourcePanelWindow = new PeopleResourcePanelWindow(); peopleResourcePanelWindow.ShowDialog(); break; case "NotifyMsgPresenter": var notifyMsgPresenterWindow = new NotifyMsgPresenterWindow(); notifyMsgPresenterWindow.ShowDialog(); break; case "MasterDetailDataGrid": var masterDetailDataGridWindow = new MasterDetailDataGridWindow(); masterDetailDataGridWindow.ShowDialog(); break; case "FlexDataGrid": var flexDataGridWindow = new FlexDataGridWindow(); flexDataGridWindow.ShowDialog(); break; case "DataGridDetailListWindow": var dataGridDetailListWindow = new DataGridDetailListWindow(); dataGridDetailListWindow.ShowDialog(); break; case "BindingDemoWindow": var bindingDemoWindow = new BindingDemoWindow(); bindingDemoWindow.ShowDialog(); break; case "SwapImageDemoWindow": var swapImageDemoWindow = new SwapImageDemoWindow(); swapImageDemoWindow.ShowDialog(); break; case "CircularLoadingWindow": var circularLoadingWindow = new CircularLoadingWindow(); circularLoadingWindow.ShowDialog(); break; case "LoadingControlWindow": var loadingControlWindow = new LoadingControl.LoadingControlWindow(); loadingControlWindow.ShowDialog(); break; case "CalloutBorderStyleWindow": var calloutBorderStyleWindow = new CalloutBorderStyleWindow(); calloutBorderStyleWindow.ShowDialog(); break; case "MeasureOverrideAndArrangeOverrideWindow": var measureOverrideAndArrangeOverrideWindow = new MeasureOverrideAndArrangeOverrideWindow(); measureOverrideAndArrangeOverrideWindow.ShowDialog(); break; case "DrawingDemoWindow": var drawingDemoWindow = new DrawingDemoWindow(); drawingDemoWindow.ShowDialog(); break; case "WaterMarkDemoWindow": var waterMarkDemoWindow = new WaterMarkDemoWindow(); waterMarkDemoWindow.ShowDialog(); break; case "MultiUiThreadingDemoWindow": var mutliUiThreadingDemoWindow = new MultiUiThreadingDemoWindow(); mutliUiThreadingDemoWindow.ShowDialog(); break; case "CustomPixelShaderDemo": var customPixelShaderDemo = new CustomPixelShaderDemo.CustomPixelShaderDemo(); customPixelShaderDemo.ShowDialog(); break; case "GifShowDemoWindow": var gifShowDemoWindow = new GifShowDemoWindow(); gifShowDemoWindow.ShowDialog(); break; case "NewCallAnimationWindow": var newCallAnimationWindow = new NewCallAnimationWindow(); newCallAnimationWindow.ShowDialog(); break; case "GenerateBitmapDemo": var generateBitmapDemo = new GenerateBitmapDemo.GenerateBitmapDemo(); generateBitmapDemo.ShowDialog(); break; case "FontFamilyDemoWindow": var fontFamilyDemoWindow = new FontFamilyDemoWindow(); fontFamilyDemoWindow.ShowDialog(); break; case "FoucsDemoWindow": var foucsDemoWindow = new FoucsDemoWindow(); foucsDemoWindow.ShowDialog(); break; case "KeyBoardInputWindow": var keyBoardInputWindow = new KeyBoardInputWindow(); keyBoardInputWindow.ShowDialog(); break; case "EllipsisLoadingDemoWindow": var ellipsisLoadingDemoWindow = new EllipsisLoadingDemoWindow(); ellipsisLoadingDemoWindow.ShowDialog(); break; case "ImagePerformanceWindow": var imagePerformanceWindow = new ImagePerformanceWindow(); imagePerformanceWindow.ShowDialog(); break; case "CollectionViewWindow": var collectionViewWindow = new CollectionViewWindow(); collectionViewWindow.ShowDialog(); break; case "MultiSceenDemoWindow": var multiSceenDemoWindow = new MultiSceenDemoWindow(); multiSceenDemoWindow.ShowDialog(); break; case "ResourceDictionaryCodeBehindWindow": var resourceDictionaryCodeBehindWindow = new ResourceDictionaryCodeBehindWindow(); resourceDictionaryCodeBehindWindow.ShowDialog(); break; case "TreeViewDemoWindow": var treeViewDemoWindow = new TreeViewDemoWindow(); treeViewDemoWindow.ShowDialog(); break; case "GroupExpanderWindow": var groupExpanderWindow = new GroupExpanderWindow(); groupExpanderWindow.ShowDialog(); break; case "ShortCutDemoWindow": var shortCutDemoWindow = new ShortCutDemoWindow(); shortCutDemoWindow.ShowDialog(); break; case "ScreenDragMainWindow": var screenDragMainWindow = new ScreenDragMainWindow(); screenDragMainWindow.ShowDialog(); break; case "AnimationPerformanceWindow": var animationPerformanceWindow = new AnimationPerformanceWindow(); animationPerformanceWindow.ShowDialog(); break; case "FluidLayoutDemoWindow": var fluidLayoutDemoWindow = new FluidLayoutDemoWindow(); fluidLayoutDemoWindow.ShowDialog(); break; case "DragableTabControlDemo": var dragableTabControlDemo = new DragableTabControlDemo.DragableTabControlDemo(); dragableTabControlDemo.ShowDialog(); break; case "DragableListBoxDemo": var dragableListBoxDemo = new DragableListBoxDemo.DragableListBoxDemo(); dragableListBoxDemo.ShowDialog(); break; case "CustomWindowDemo": var customWindowDemo = new CustomWindowDemo(); customWindowDemo.ShowDialog(); break; case "AdornerControlWindow": var adornerControlWindow = new AdornerControlWindow(); adornerControlWindow.ShowDialog(); break; case "ItemsControlWithTimelineWindow": var itemsControlWithTimelineWindow = new ItemsControlWithTimelineWindow(); itemsControlWithTimelineWindow.ShowDialog(); break; case "IsSynchronizedWithCurrentItemWindow": var isSynchronizedWithCurrentItemWindow = new IsSynchronizedWithCurrentItemWindow(); isSynchronizedWithCurrentItemWindow.ShowDialog(); break; case "ColorfulTextBlockWindow": var colorfulTextBlockWindow = new ColorfulTextBlockWindow(); colorfulTextBlockWindow.ShowDialog(); break; } this.Effect = null; }
public MainWindow() { InitializeComponent(); AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(EventCurrentDomainUnhandledException); this.DataContext = this; iExtendedNotifyIcon = new ExtendedNotifyIcon(Properties.Resources.Icon); iExtendedNotifyIcon.Click += EventNotifyIconClick; iExtendedNotifyIcon.RightClick += EventNotifyIconRightClick; System.Windows.Forms.ContextMenu menu = new System.Windows.Forms.ContextMenu(); System.Windows.Forms.MenuItem open = new System.Windows.Forms.MenuItem("Open", new EventHandler(EventContextMenuOpen)); System.Windows.Forms.MenuItem exit = new System.Windows.Forms.MenuItem("Exit", new EventHandler(EventContextMenuExit)); menu.MenuItems.Add(open); menu.MenuItems.Add(exit); iExtendedNotifyIcon.ContextMenu = menu; Left = SystemParameters.WorkArea.Width - LayoutRoot.Width - 10; Top = SystemParameters.WorkArea.Height - LayoutRoot.Height - 2; iConfigurationWindow = new ConfigurationWindow(); iMediaPlayerWindow = new MediaPlayerWindow(iConfigurationWindow.Enabled, this); iConfigurationWindow.Left = Left; iConfigurationWindow.Top = Top - iConfigurationWindow.LayoutRoot.Height + 1; iMediaPlayerWindow.Left = Left; iMediaPlayerWindow.Top = Top - iMediaPlayerWindow.LayoutRoot.Height + 1; // Locate these storyboards and "cache" them - we only ever want to find these once for performance reasons iStoryBoardFadeIn = (Storyboard)this.TryFindResource("storyBoardFadeIn"); iStoryBoardFadeIn.Completed += new EventHandler(EventStoryBoardFadeInCompleted); iStoryBoardFadeOut = (Storyboard)TryFindResource("storyBoardFadeOut"); iStoryBoardFadeOut.Completed += new EventHandler(EventStoryBoardFadeOutCompleted); this.Closing += EventWindowClosing; System.Drawing.Image image = OpenHome.Songcast.Properties.Resources.Icon.ToBitmap(); MemoryStream stream = new MemoryStream(); image.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp); byte[] bytes = stream.ToArray(); try { iSongcast = new Songcast("av.openhome.org", iConfigurationWindow.Subnet, iConfigurationWindow.Channel, iConfigurationWindow.Ttl, iConfigurationWindow.Latency, iConfigurationWindow.Multicast, iConfigurationWindow.Enabled, iConfigurationWindow.Preset, iMediaPlayerWindow.ReceiverList, iConfigurationWindow.SubnetList, this, "OpenHome", "http://www.openhome.org", "http://www.openhome.org", bytes, "image/bmp"); } catch (SongcastError e) { MessageBox.Show(e.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); App.Current.Shutdown(1); } iConfigurationWindow.SubnetChanged += EventSubnetChanged; iConfigurationWindow.MulticastChanged += EventMulticastChanged; iConfigurationWindow.ChannelChanged += EventMulticastChannelChanged; iConfigurationWindow.TtlChanged += EventTtlChanged; iConfigurationWindow.LatencyChanged += EventLatencyChanged; iConfigurationWindow.PresetChanged += EventPresetChanged; bool value = iConfigurationWindow.Enabled; iMediaPlayerWindow.SetEnabled(value); Settings.Click += new RoutedEventHandler(EventSettingsClick); Receivers.Click += new RoutedEventHandler(EventReceiversClick); this.Topmost = true; iConfigurationWindow.Topmost = true; iMediaPlayerWindow.Topmost = true; }