Exemplo n.º 1
0
        /// <summary>
        /// Load stored options and parameters from a file;
        /// this will automatically make this setting the most recent
        /// if the setting does not exist, it is removed from the list of recent settings, and ASettingsName is cleared
        ///
        /// </summary>
        /// <returns>void</returns>
        public StringCollection LoadSettings(ref String ASettingsName, ref TParameterList AParameters)
        {
            StringCollection ReturnValue;
            String path;

            // need to switch back to the application directory, because the path names might be relative to the application
            Environment.CurrentDirectory = FApplicationDirectory;
            path = FSettingsDirectory + FReportName + System.IO.Path.DirectorySeparatorChar + ASettingsName + ".xml";

            if (!System.IO.File.Exists(path))
            {
                path = FUserSettingsDirectory + FReportName + System.IO.Path.DirectorySeparatorChar + ASettingsName + ".xml";
            }

            if (System.IO.File.Exists(path))
            {
                AParameters.Load(path);

                // nobody needs to see this variable
                AParameters.RemoveVariable("systemsettings");

                ReturnValue = UpdateRecentlyUsedSettings(ASettingsName);
            }
            else
            {
                // setting does not exist anymore, and should disappear from the menu
                ReturnValue = UpdateRecentlyUsedSettings(ASettingsName);
                ReturnValue.Remove(ASettingsName);
                ASettingsName = "";
            }

            return ReturnValue;
        }