Example #1
0
 public static bool Find(int codePage, ref EncodingDescription description)
 {
     foreach (EncodingDescription desc in descriptions)
     {
         if (desc.CodePage == codePage)
         {
             description = desc;
             return(true);
         }
     }
     return(false);
 }
Example #2
0
        /* Public methods */

        /// <summary>Finds the description for the encoding with the specified name.</summary>
        /// <param name="name">The encoding's name.</param>
        /// <param name="description">The encoding's description that was found.</param>
        /// <returns>Whether the description was found.</returns>
        public static bool Find(string name, ref EncodingDescription description)
        {
            foreach (EncodingDescription desc in descriptions)
            {
                if (desc.Name == name)
                {
                    description = desc;
                    return(true);
                }
            }
            return(false);
        }
Example #3
0
        private Encoding GetFallbackEncoding()
        {
            ConfigFileOpenFallbackEncoding fallbackEncodingConfig = Base.Config.FileOpenFallbackEncoding;

            if (fallbackEncodingConfig == ConfigFileOpenFallbackEncoding.CurrentLocale)
            {
                return(Encodings.GetEncoding(Encodings.SystemDefault.CodePage));
            }

            string encodingCode = Base.Config.FileOpenFallbackEncodingFixed;
            EncodingDescription encodingDescription = EncodingDescription.Empty;

            Encodings.Find(encodingCode, ref encodingDescription);
            return(Encodings.GetEncoding(encodingDescription.CodePage));
        }
Example #4
0
        public int CompareTo(object obj)
        {
            if (!(obj is EncodingDescription))
            {
                throw new ArgumentException("Object is not EncodingDescription");
            }

            EncodingDescription obj2 = (EncodingDescription)obj;
            int result = this.region.CompareTo(obj2.region);

            if (result != 0)
            {
                return(result);
            }

            return(this.name.CompareTo(obj2.name));
        }
Example #5
0
 public int CompareTo(object obj)
 {
     if (obj is EncodingDescription)
     {
         EncodingDescription obj2 = (EncodingDescription)obj;
         int descComparison       = this.description.CompareTo(obj2.description);
         if (descComparison != 0)
         {
             return(descComparison);
         }
         else
         {
             return(this.name.CompareTo(obj2.name));
         }
     }
     else
     {
         throw new ArgumentException("Object is not EncodingDescription");
     }
 }
Example #6
0
        public static string GetEncodingName(int codePage)
        {
            EncodingDescription desc = EncodingDescription.Empty;

            if (Find(codePage, ref desc))
            {
                return(desc.Name);
            }

            try {
                Encoding encoding = GetEncoding(codePage);
                if (encoding != null)
                {
                    return(encoding.WebName);
                }
            }
            catch (ArgumentException) {
                //Don't do anything, this will be handled next
            }
            return(null);
        }
	protected override bool ProcessResponse (ResponseType response) {
		if (response == ResponseType.Ok) {

			/* Check chosen encoding */
			chosenEncoding = encodingComboBoxComponent.ChosenEncoding;
			if (Base.Config.PrefsDefaultsFileSaveEncodingOption == ConfigFileSaveEncodingOption.RememberLastUsed) {
				int activeAction = encodingComboBoxComponent.ActiveSelection;
				ConfigFileSaveEncoding activeOption = (ConfigFileSaveEncoding)Enum.ToObject(typeof(ConfigFileSaveEncoding), activeAction);
				if (((int)activeOption) >= ((int)ConfigFileSaveEncoding.Fixed)) {
					Base.Config.PrefsDefaultsFileSaveEncodingFixed = chosenEncoding.Name;
				}
				else {
					Base.Config.PrefsDefaultsFileSaveEncoding = activeOption;
				}
			}

			/* Check chosen subtitle format */
			chosenSubtitleType = formatComboBoxComponent.ChosenSubtitleType;
			if (Base.Config.PrefsDefaultsFileSaveFormatOption == ConfigFileSaveFormatOption.RememberLastUsed) {
				Base.Config.PrefsDefaultsFileSaveFormatFixed = chosenSubtitleType;
			}

			/* Check chosen newline type */
			chosenNewlineType = newlineComboBoxComponent.ChosenNewlineType;
			if (Base.Config.PrefsDefaultsFileSaveNewlineOption == ConfigFileSaveNewlineOption.RememberLastUsed) {
				Base.Config.PrefsDefaultsFileSaveNewline = chosenNewlineType;
			}

			/* Check chosen filename */
			chosenFilename = AddExtensionIfNeeded(chosenSubtitleType);

			SetReturnValue(true);
		}
		return false;
	}
Example #8
0
	public static bool Find (int codePage, ref EncodingDescription description) {
		foreach (EncodingDescription desc in descriptions) {
			if (desc.CodePage == codePage) {
				description = desc;
				return true;
			}
		}
		return false;
	}
Example #9
0
	/* Public methods */

	/// <summary>Finds the description for the encoding with the specified name.</summary>
	/// <param name="name">The encoding's name.</param>
	/// <param name="description">The encoding's description that was found.</param>
	/// <returns>Whether the description was found.</returns>
	public static bool Find (string name, ref EncodingDescription description) {
		foreach (EncodingDescription desc in descriptions) {
			if (desc.Name == name) {
				description = desc;
				return true;
			}
		}
		return false;
	}
Example #10
0
	#pragma warning disable 169		//Disables warning about handlers not being used

	protected override bool ProcessResponse (ResponseType response) {
		if (response == ResponseType.Ok) {
			chosenFilename = dialog.Filename;
			chosenEncoding = encodingComboBox.ChosenEncoding;

			if (Base.Config.PrefsDefaultsFileOpenEncodingOption == ConfigFileOpenEncodingOption.RememberLastUsed) {
				int activeAction = encodingComboBox.ActiveSelection;
				ConfigFileOpenEncoding activeOption = (ConfigFileOpenEncoding)Enum.ToObject(typeof(ConfigFileOpenEncoding), activeAction);
				if (((int)activeOption) >= ((int)ConfigFileOpenEncoding.Fixed))
					Base.Config.PrefsDefaultsFileOpenEncodingFixed = chosenEncoding.Name;
				else
					Base.Config.PrefsDefaultsFileOpenEncoding = activeOption;
			}

			if (videoComboBox.Active > 0) {
				int videoFileIndex = videoComboBox.Active - 2;
				chosenVideoUri = new Uri("file://" + videoFiles[videoFileIndex] as string);
			}
			SetReturnValue(true);
		}
		return false;
	}
Example #11
0
	private void AddToShownEncodings (EncodingDescription desc) {
		if (!IsAlreadyShown(desc.Name)) {
			GetListStore(shownTreeView).AppendValues(desc.Description, desc.Name);
			UpdateShownEncodingsPrefs();
		}
	}