コード例 #1
0
        internal static bool Serialize(string filePath, PersistentSettings settingsData)
        {
            try
            {
                XmlSerializer serializer = new XmlSerializer(typeof(PersistentSettings));
                FileStream fileStream = new FileStream(filePath, FileMode.Create, FileAccess.Write);
                serializer.Serialize(fileStream, settingsData);
            }
            catch (Exception)
            {
                return false;
            }

            return true;
        }
コード例 #2
0
        internal static PersistentSettings Deserialize(string filePath)
        {
            PersistentSettings settingsInstance = null;
            if (!string.IsNullOrEmpty(filePath) && (File.Exists(filePath) != false))
            {
                try
                {
                    XmlSerializer serializer = new XmlSerializer(typeof(PersistentSettings));
                    FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
                    settingsInstance = serializer.Deserialize(fileStream) as PersistentSettings;
                }
                catch (Exception)
                {
                }
            }

            if (null == settingsInstance) // Default settings.
                settingsInstance = new PersistentSettings();

            return settingsInstance;
        }
コード例 #3
0
ファイル: CoreComponent.cs プロジェクト: samuto/designscript
        private CoreComponent(IGraphUiContainer uiContainer, bool enableGeometricPreview)
        {
            // Either create or reuse a session name.
            EstablishSessionName(uiContainer);

            this.uiContainer = uiContainer;
            if (false != enableGeometricPreview)
                this.renderService = new RenderService(this);

            if (this.HostApplication != null)
            {
                object filteredClasses = null;
                Dictionary<string, object> configs = this.HostApplication.Configurations;
                if (configs.TryGetValue(ConfigurationKeys.FilteredClasses, out filteredClasses))
                {
                    this.filteredClasses = ((string)filteredClasses).ToLower();
                    if (!this.filteredClasses.EndsWith(";"))
                        this.filteredClasses += ';';
                }
            }

            this.heartbeat = Heartbeat.GetInstance();
            this.studioSettings = StudioSettings;
        }
コード例 #4
0
ファイル: CoreComponent.cs プロジェクト: samuto/designscript
        public void Shutdown()
        {
            if (null != studioSettings)
            {
                string settingsFilePath = GetSettingsFilePath();
                PersistentSettings.Serialize(settingsFilePath, studioSettings);
                studioSettings = null;
            }

            if (null != this.renderService)
            {
                this.renderService.Shutdown();
                this.renderService = null;
            }
        }