private void Application_Startup(object sender, StartupEventArgs e) { // create helpers iHelper = new Helper(e.Args); iHelper.ProcessOptionsFileAndCommandLine(); ICrashLogDumper d = new CrashLogDumperWindow(ResourceManager.IconLarge, iHelper.Title, iHelper.Product, iHelper.Version); iHelper.AddCrashLogDumper(d); iHelperAutoUpdate = new HelperAutoUpdate(iHelper, new Linn.Toolkit.Wpf.ViewAutoUpdateStandard(Konfig.ResourceManager.Icon, Konfig.Properties.Resources.IconLarge), new Invoker(this.Dispatcher)); iHelperAutoUpdate.Start(); // create the main window iMainWindow = new MainWindow(iHelper.Product, iHelper.Title); iMainWindow.Show(); Preferences preferences = new Preferences(iHelper); Model.Instance = new Model(preferences); // create the xapp controller and view Invoker invoker = new Invoker(this.Dispatcher); SettingsPageAdvanced settings = new SettingsPageAdvanced(invoker, Model.Instance, preferences, iHelperAutoUpdate, "settings", "settings"); UpdateListenerRepeater listeners = new UpdateListenerRepeater(new IUpdateListener[] { iMainWindow, settings }); iXappController = new XappController(invoker, iHelper, Model.Instance, preferences, settings, listeners); iViewer = new ViewerBrowser(iMainWindow.WebBrowser, iXappController.MainPageUri); }
// // This method is invoked when the application has loaded and is ready to run. In this // method you should instantiate the window, load the UI into it and then make the window // visible. // // You have 17 seconds to return from this method, or iOS will terminate your application. // public override bool FinishedLaunching(UIApplication app, NSDictionary options) { // create the app helper iHelper = new Helper(Environment.GetCommandLineArgs()); iHelper.ProcessOptionsFileAndCommandLine(); // add a crash log dumper CrashLogDumper d = new CrashLogDumper(iHelper.Title, iHelper.Product, iHelper.Version); //d.SetAutoSend(false); iHelper.AddCrashLogDumper(d); iWindow = new UIWindow(UIScreen.MainScreen.Bounds); iViewController = new KonfigViewController(); iWindow.RootViewController = iViewController; Preferences preferences = new Preferences(iHelper); Model.Instance = new Model(preferences); // create the xapp controller and view Invoker invoker = new Invoker(); PageBase page = new SettingsPageBasic(invoker, preferences, "settings", "settings"); iXappController = new XappController(invoker, iHelper, Model.Instance, preferences, page, this); iWindow.MakeKeyAndVisible(); iViewer = new ViewerBrowser(iViewController.WebView, iXappController.MainPageUri); return(true); }
public override void FinishedLaunching(NSObject notification) { NSImage img = new NSImage(NSBundle.MainBundle.PathForImageResource("Icon106x106.png")); // create the helpers iHelper = new Helper(Environment.GetCommandLineArgs()); iHelper.ProcessOptionsFileAndCommandLine(); CrashLogDumperWindowController d = new CrashLogDumperWindowController(img, iHelper.Title, iHelper.Product, iHelper.Version); d.LoadWindow(); iHelper.AddCrashLogDumper(d); iHelperAutoUpdate = new HelperAutoUpdate(iHelper, new Linn.Toolkit.Mac.ViewAutoUpdateStandard(img), new Linn.Toolkit.Mac.Invoker()); iHelperAutoUpdate.Start(); // create the xapp components iXapp = new Framework <Session>(Path.Combine(OpenHome.Xen.Environment.AppPath, "PageHtml")); iWebServer = new WebServer(iXapp); iControl = new PageControl(iHelper, iXapp, Path.Combine(OpenHome.Xen.Environment.AppPath, "PageHtml"), "PageDefinitions.xml"); iControl.EventCloseApplicationRequested += CloseApplicationRequested; // create and show the main window iMainWindow = new MainWindowController(); iMainWindow.Window.Title = iHelper.Product; iViewBrowser = new ViewerBrowser(iMainWindow.WebView, iWebServer.ResourceUri); iMainWindow.Window.MakeKeyAndOrderFront(this); }
public override void WillTerminate(UIApplication application) { iXappController.Dispose(); iXappController = null; iViewer.Dispose(); iViewer = null; }
private void WindowDidBecomeKey(object sender, EventArgs e) { if (iViewer == null) { iViewer = new ViewerBrowser(iWebView, iServer.PresentationUri); } iPageMain.TrackPageVisibilityChange(true); }
public MainWindow(Helper aHelper, string aWebServerUri, PageControl aControl) { InitializeComponent(); this.Title = aHelper.Product; Viewer viewer = new ViewerBrowser(webBrowser1, aWebServerUri); aControl.EventCloseApplicationRequested += CloseApplicationRequested; }
public override void OnActivated(UIApplication application) { Assert.Check(iControl == null); iControl = new PageControl(iHelper, iXapp, Path.Combine(OpenHome.Xen.Environment.AppPath, "PageHtml"), "PageDefinitions.xml"); //iControl.EventCloseApplicationRequested += ; Assert.Check(iViewBrowser == null); iViewBrowser = new ViewerBrowser(viewController.WebView, iWebServer.ResourceUri); }
public override void AwakeFromNib() { // initialise resigned state iSessionResigned = false; // load some images from the bundle NSImage largeIcon = new NSImage(NSBundle.MainBundle.PathForImageResource("IconLarge.png")); // create the app helper iHelper = new Helper(Environment.GetCommandLineArgs()); iHelper.ProcessOptionsFileAndCommandLine(); // add a crash log dumper CrashLogDumperWindowController d = new CrashLogDumperWindowController(largeIcon, iHelper.Title, iHelper.Product, iHelper.Version); d.LoadWindow(); iHelper.AddCrashLogDumper(d); // create auto update view and helper iHelperAutoUpdate = new HelperAutoUpdate(iHelper, new Linn.Toolkit.Mac.ViewAutoUpdateStandard(largeIcon), new Invoker(), (s, e) => {}); iHelperAutoUpdate.Start(); // create the main songcast model iModel = new Model(new Invoker(), iHelper); iModel.EventEnabledChanged += ModelEnabledChanged; // create the preferences 'view' for communicating with the system preferences app iViewPreferences = new ViewPreferences(new Invoker(), iModel, iHelperAutoUpdate); // creating the status item with a length of -2 is equivalent to the call // [[NSStatusBar systemStatusBar] statusItemWithLength:NSSquareStatusItemLength] iStatusItem = NSStatusBar.SystemStatusBar.CreateStatusItem(-2); iStatusItem.HighlightMode = false; iStatusItem.Target = this; iStatusItem.Action = new Selector("statusItemClicked:"); // setup system event notifications NSNotificationCenter center = NSWorkspace.SharedWorkspace.NotificationCenter; center.AddObserver(this, new Selector("willSleep:"), new NSString("NSWorkspaceWillSleepNotification"), null); center.AddObserver(this, new Selector("didWake:"), new NSString("NSWorkspaceDidWakeNotification"), null); center.AddObserver(this, new Selector("sessionDidResignActive:"), new NSString("NSWorkspaceSessionDidResignActiveNotification"), null); center.AddObserver(this, new Selector("sessionDidBecomeActive:"), new NSString("NSWorkspaceSessionDidBecomeActiveNotification"), null); // create the main window iMainWindow = new MainWindowController(); iMainWindow.LoadWindow(); iMainWindow.Window.DidResignKey += MainWindowDidResignKey; iMainWindow.Window.CollectionBehavior = NSWindowCollectionBehavior.CanJoinAllSpaces; // create the xapp controller and view iXappController = new XappController(iModel, new Invoker()); iXappController.MainPage.EventShowConfig += ShowConfig; iXappController.MainPage.EventShowHelp += ShowHelp; iViewer = new ViewerBrowser(iMainWindow.WebView, iXappController.MainPageUri); }
private void Window_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e) { if (iViewer != null) { iViewer.Dispose(); iViewer = null; } if (IsVisible) { iViewer = new ViewerBrowser(WebBrowser, iServer.PresentationUri); WebBrowser.Focus(); } }
public Controller(string[] aArgs) { iHelper = new Helper(aArgs); iHelper.ProcessOptionsFileAndCommandLine(); iMainWindow = new MainWindow(iHelper); iMainWindow.ShowAll(); Preferences preferences = new Preferences(iHelper); Model.Instance = new Model(preferences); // create the xapp controller and view Invoker invoker = new Invoker(); PageBase page = new SettingsPageBasic(invoker, preferences, "settings", "settings"); iXappController = new XappController(invoker, iHelper, Model.Instance, preferences, page, iMainWindow); iViewer = new ViewerBrowser(iMainWindow.WebView, iXappController.MainPageUri); }
private void Application_Exit(object sender, ExitEventArgs e) { if (iHelperAutoUpdate != null) { iHelperAutoUpdate.Dispose(); iHelperAutoUpdate = null; } if (iXappController != null) { iXappController.Dispose(); iXappController = null; } if (iViewer != null) { iViewer.Dispose(); iViewer = null; } }
public override void FinishedLaunching(NSObject notification) { // load some images from the bundle NSImage largeIcon = new NSImage(NSBundle.MainBundle.PathForImageResource("IconLarge.png")); // create the app helper iHelper = new Helper(Environment.GetCommandLineArgs()); iHelper.ProcessOptionsFileAndCommandLine(); // add a crash log dumper CrashLogDumperWindowController d = new CrashLogDumperWindowController(largeIcon, iHelper.Title, iHelper.Product, iHelper.Version); d.LoadWindow(); iHelper.AddCrashLogDumper(d); // create auto update view and helper iHelperAutoUpdate = new HelperAutoUpdate(iHelper, new Linn.Toolkit.Mac.ViewAutoUpdateStandard(largeIcon), new Invoker()); iHelperAutoUpdate.Start(); iMainWindowController = new MainWindowController(iHelper.Product); MainWindowDelegate windowDelegate = new MainWindowDelegate(iMainWindowController.Window, iHelper.Title, largeIcon); iMainWindowController.Window.Delegate = windowDelegate; iMainWindowController.Window.MakeKeyAndOrderFront(this); Preferences preferences = new Preferences(iHelper); Model.Instance = new Model(preferences); // create the xapp controller and view Invoker invoker = new Invoker(); SettingsPageAdvanced settings = new SettingsPageAdvanced(invoker, Model.Instance, preferences, iHelperAutoUpdate, "settings", "settings"); UpdateListenerRepeater listeners = new UpdateListenerRepeater(new IUpdateListener[] { windowDelegate, settings }); iXappController = new XappController(invoker, iHelper, Model.Instance, preferences, settings, listeners); iViewer = new ViewerBrowser(iMainWindowController.WebView, iXappController.MainPageUri); }
private void Application_Startup(object sender, StartupEventArgs e) { try { // create helpers iHelper = new Helper(e.Args); ICrashLogDumper d = new CrashLogDumperWindow(ResourceManager.Icon, iHelper.Title, iHelper.Product, iHelper.Version); iHelper.AddCrashLogDumper(d); iHelperAutoUpdate = new HelperAutoUpdate(iHelper, new Linn.Toolkit.Wpf.ViewAutoUpdateStandard(ResourceManager.IconSongcaster, Linn.Songcast.Properties.Resources.IconLarge), new Invoker(this.Dispatcher)); iHelperAutoUpdate.Start(); // create the model iModel = new Model(new Invoker(this.Dispatcher), iHelper); iHelper.ProcessOptionsFileAndCommandLine(); // this should be created before PreferencesWindowClosing event can be called or PreferencesWindowClosing will raise a null reference exception iWaitMainWindowClosed = new AutoResetEvent(false); // create the preferences window and controller iPreferencesWindow = new PreferencesWindow(iHelper, new PreferenceBindings(iModel, iHelperAutoUpdate.OptionPageUpdates), iModel, iHelperAutoUpdate); iPreferencesWindow.Closing += PreferencesWindowClosing; iPreferencesWindow.EventButtonHelpClicked += OpenHelp; // create the main window iMainWindow = new MainWindow(); iMainWindow.Deactivated += MainWindowDeactivated; // create the xapp controller and view iXappController = new XappController(iModel, new Invoker(this.Dispatcher)); iXappController.MainPage.EventShowConfig += OpenPreferences; iXappController.MainPage.EventShowHelp += OpenHelp; iViewer = new ViewerBrowser(iMainWindow.WebBrowser, iXappController.MainPageUri); // create the sys tray icon iFormSysTray = new FormSysTray(iModel); iFormSysTray.EventIconClick += SysTrayIconClick; // start the model System.Drawing.Image image = System.Drawing.Image.FromStream(ResourceManager.Icon.StreamSource); System.IO.MemoryStream stream = new System.IO.MemoryStream(); image.Save(stream, System.Drawing.Imaging.ImageFormat.Png); iModel.Start("linn.co.uk", "Linn", "http://www.linn.co.uk", "http://www.linn.co.uk", stream.ToArray(), "image/png"); bool createdNew; iWaitHandleMainWindow = new EventWaitHandle(false, EventResetMode.ManualReset, "LinnSongcastOpenPreferences", out createdNew); if (!createdNew) { iWaitHandleMainWindow.Set(); //MessageBox.Show("Linn Songcast is already running", "Information", MessageBoxButton.OK, MessageBoxImage.Information); App.Current.Shutdown(0); return; } iWaitHandleExit = new EventWaitHandle(false, EventResetMode.ManualReset, "LinnSongcastExit", out createdNew); Assert.Check(createdNew); iThreadMainWindow = new Thread(ProcessOpenMainWindow); iThreadMainWindow.IsBackground = true; iThreadMainWindow.Start(); iThreadExit = new Thread(ProcessExit); iThreadExit.IsBackground = true; iThreadExit.Start(); Microsoft.Win32.SystemEvents.PowerModeChanged += PowerModeChanged; } catch (SongcastError) { MessageBox.Show("Failed to initialise Linn Songcast Driver", "Error", MessageBoxButton.OK, MessageBoxImage.Error); App.Current.Shutdown(1); } }