SIL.FieldWorks.Common.Framework.DetailControls.Slice.Slice.GenerateHelpTopicId C# (CSharp) Méthode

GenerateHelpTopicId() private méthode

private GenerateHelpTopicId ( string helpTopicPrefix ) : string
helpTopicPrefix string
Résultat string
		private string GenerateHelpTopicId(string helpTopicPrefix)
		{
			String generatedHelpTopicID;

			String tempfieldName = XmlUtils.GetOptionalAttributeValue(ConfigurationNode, "field");
			String templabelName = XmlUtils.GetOptionalAttributeValue(ConfigurationNode, "label");
			String areaName = m_mediator.PropertyTable.GetStringProperty("areaChoice", null);
			string toolName = m_mediator.PropertyTable.GetStringProperty("currentContentControl", null);
			int parentHvo = System.Convert.ToInt32(XmlUtils.GetOptionalAttributeValue(ConfigurationNode, "hvoDisplayParent"));

			if (tempfieldName == "Targets" && parentHvo != 0)
				// Ceoss Reference (entry level) or lexical relation (sense level) subitems
			{
				var repo = m_cache.ServiceLocator.GetInstance<ILexEntryRepository>();
				ILexEntry lex;
				repo.TryGetObject(parentHvo, out lex);

				if (lex != null) // It must be the entry level
				{
					generatedHelpTopicID = helpTopicPrefix + "-" + toolName + "-CrossReferenceSubitem";
				}
				else // It must be the sense level
				{
					generatedHelpTopicID = helpTopicPrefix + "-" + toolName + "-LexicalRelationSubitem";

				}
			}
			else
			{
				templabelName = getAlphaNumeric(templabelName);
				if (String.IsNullOrEmpty(tempfieldName))
				{
					// try to use the slice label, without spaces.
					tempfieldName = templabelName;
				}
				generatedHelpTopicID = GetGeneratedHelpTopicId(helpTopicPrefix, tempfieldName);
				if (!helpTopicIsValid(generatedHelpTopicID))
				{
					// try to use the slice label, without spaces if the helpTopicID does not work for the field xml attribute.
					generatedHelpTopicID = GetGeneratedHelpTopicId(helpTopicPrefix, templabelName);
					if (!helpTopicIsValid(generatedHelpTopicID))
					{
						if (helpTopicPrefix.Equals("khtpChoose"))
							generatedHelpTopicID = "khtpChoose-CmPossibility";
						else if (areaName == "lists")
						{
							generatedHelpTopicID = "khtp-CustomListField"; // If the list isn't defined, use the generic list help topic

						}
						else
						{
							generatedHelpTopicID = "khtpNoHelpTopic"; // else use the generic no help topic
						}
					}
				}
			}

		return generatedHelpTopicID;
		}