Esempio n. 1
0
        private static void LoadInternal(IDisplay display, string installPath, string settingsPath)
        {
            string name = null;

            try
            {
                if (display != null)
                {
                    name = display.Name;
                    string             typeName           = display.GetType().FullName;
                    LoadedDisplayStyle loadedDisplayStyle = new LoadedDisplayStyle(display);

                    loadedDisplayStyle.SetGrowlApplicationPath(Application.StartupPath);
                    loadedDisplayStyle.SetDisplayStylePath(installPath);

                    if (loadedDisplayStyle.Display.SettingsPanel != null)
                    {
                        settingsPanels.Add(typeName, loadedDisplayStyle.Display.SettingsPanel);
                        loadedDisplayStyle.Display.SettingsPanel.SetDirectories(installPath, settingsPath);
                        loadedDisplayStyle.Display.SettingsCollection = loadedDisplayStyle.Display.SettingsPanel.GetSettings();
                    }

                    loadedDisplayStyle.Load();

                    Utility.WriteDebugInfo(String.Format("Display '{0}' was loaded successfully", name));

                    // now that the display has been loaded, add it (and any subdisplays) the the list of available displays
                    string[] displays = loadedDisplayStyle.Display.GetListOfAvailableDisplays();
                    foreach (string displayName in displays)
                    {
                        Growl.Display d = new Growl.Display(displayName, loadedDisplayStyle.Display);
                        availableDisplays.Add(displayName, d);

                        OnDisplayLoaded(d);

                        Utility.WriteDebugInfo(String.Format("Display '{0}' handles the '{1}' display style", name, displayName));
                    }
                }
            }
            catch (Exception ex)
            {
                // suppress any per-display loading exceptions
                Utility.WriteDebugInfo(String.Format("Display failed to load: '{0}' - {1} - {2}", name, ex.Message, ex.StackTrace));
            }
        }
        private static void LoadInternal(IDisplay display, string installPath, string settingsPath)
        {
            string name = null;
            try
            {
                if (display != null)
                {
                    name = display.Name;
                    string typeName = display.GetType().FullName;
                    LoadedDisplayStyle loadedDisplayStyle = new LoadedDisplayStyle(display);

                    loadedDisplayStyle.SetGrowlApplicationPath(Application.StartupPath);
                    loadedDisplayStyle.SetDisplayStylePath(installPath);

                    if (loadedDisplayStyle.Display.SettingsPanel != null)
                    {
                        settingsPanels.Add(typeName, loadedDisplayStyle.Display.SettingsPanel);
                        loadedDisplayStyle.Display.SettingsPanel.SetDirectories(installPath, settingsPath);
                        loadedDisplayStyle.Display.SettingsCollection = loadedDisplayStyle.Display.SettingsPanel.GetSettings();
                    }

                    loadedDisplayStyle.Load();

                    Utility.WriteDebugInfo(String.Format("Display '{0}' was loaded successfully", name));

                    // now that the display has been loaded, add it (and any subdisplays) the the list of available displays
                    string[] displays = loadedDisplayStyle.Display.GetListOfAvailableDisplays();
                    foreach (string displayName in displays)
                    {
                        Growl.Display d = new Growl.Display(displayName, loadedDisplayStyle.Display);
                        availableDisplays.Add(displayName, d);

                        OnDisplayLoaded(d);

                        Utility.WriteDebugInfo(String.Format("Display '{0}' handles the '{1}' display style", name, displayName));
                    }
                }
            }
            catch (Exception ex)
            {
                // suppress any per-display loading exceptions
                Utility.WriteDebugInfo(String.Format("Display failed to load: '{0}' - {1} - {2}", name, ex.Message, ex.StackTrace));
            }
        }