C# Class SIL.FieldWorks.XWorks.XmlDocConfigureDlg.LayoutTreeNode

Inheritance: System.Windows.Forms.TreeNode
Afficher le fichier Open project: sillsdev/FieldWorks

Private Properties

Свойство Type Description
BuildXPathFromAttributes string
CopyPartAttributes void
CopyValuesTo void
CreateCopy LayoutTreeNode
GetModifiedLayouts bool
IsDirty bool
IsNodeDirty bool
MakeSenseNumberFormatConsistent void
NewValueIsCompatibleWithMagic bool
OverallLayoutVisibilityChanged bool
SplitNumberFormat void
SplitNumberFormat void
StoreUpdatedValuesInConfiguration void
StringsDiffer bool
UpdateAttribute void
UpdateAttributeIfDirty void
UpdateLayoutVisibilityIfChanged bool
UpdateSenseConfig void

Méthodes publiques

Méthode Description
Clone ( ) : object

Copies the tree node and the entire subtree rooted at this tree node. This is a partial copy that copies references to objects rather than cloning the objects themselves (other than the tree nodes of the subtree). This is good for moving a tree node up and down, but not so good for duplicating the tree node. In the latter case, at least the configuration XML nodes must be cloned, and the layouts those point to, and new names generated for the duplicates. Otherwise, editing the subnodes of the duplicated node ends up editing the configuration of the subnodes of the original node.

IsDescendedFrom ( TreeNode tnPossibleAncestor ) : bool
LayoutTreeNode ( ) : System
LayoutTreeNode ( XmlNode config, SIL.Utils.StringTable stringTbl, string classParent ) : System

Private Methods

Méthode Description
BuildXPathFromAttributes ( XmlAttributeCollection attributes ) : string
CopyPartAttributes ( XmlNode xn ) : void

xn is a part ref element containing the currently saved version of the part that this LayoutTreeNode represents. Copy any changed information from yourself to xn.

CopyValuesTo ( LayoutTreeNode ltn ) : void
CreateCopy ( ) : LayoutTreeNode
GetModifiedLayouts ( List rgxn, List topNodes ) : bool
IsDirty ( ) : bool
IsNodeDirty ( ) : bool
MakeSenseNumberFormatConsistent ( ) : void

If this node shows sense config information, make sure any changes are consistent with any child that also shows sense config. In particular if the numbering scheme (1.2.3 vs 1 b iii) has changed, change in all places. So far, we never have more than one child that has this property, so we don't try to handle inconsistent children.

pH 2013.09 LT-14749: Before I addressed this report, this code was intentionally not synchronising punctuation before and after the numerals. Per a discussion with Steve McConnel, before the dialog to set these settings, users could set them by editing [project]/ConfigurationSettings/LexEntry.fwlayout or LexSense.fwlayout. So my fix may break formatting that users had set up, iff they change settings through the dialog (Tools > Configure > Dictionary... > Sense). However, the dialog does not provide the same granularity as editing the .fwlayout files, and therefore, if users are using the dialog, they probably expect to update formatting of sense numbers at all levels.

NewValueIsCompatibleWithMagic ( string possibleMagicLabel, string newValue ) : bool
OverallLayoutVisibilityChanged ( ) : bool
SplitNumberFormat ( string &sBefore, string &sMark, string &sAfter ) : void
SplitNumberFormat ( string sNumber, string &sBefore, string &sMark, string &sAfter ) : void
StoreUpdatedValuesInConfiguration ( ) : void
StringsDiffer ( string s1, string s2 ) : bool
UpdateAttribute ( XmlNode xn, string sName, string sValue ) : void
UpdateAttributeIfDirty ( XmlNode xn, string sName, string sValue ) : void
UpdateLayoutVisibilityIfChanged ( ) : bool
UpdateSenseConfig ( XmlNode xn ) : void

Method Details

Clone() public méthode

Copies the tree node and the entire subtree rooted at this tree node. This is a partial copy that copies references to objects rather than cloning the objects themselves (other than the tree nodes of the subtree). This is good for moving a tree node up and down, but not so good for duplicating the tree node. In the latter case, at least the configuration XML nodes must be cloned, and the layouts those point to, and new names generated for the duplicates. Otherwise, editing the subnodes of the duplicated node ends up editing the configuration of the subnodes of the original node.
public Clone ( ) : object
Résultat object

IsDescendedFrom() public méthode

public IsDescendedFrom ( TreeNode tnPossibleAncestor ) : bool
tnPossibleAncestor System.Windows.Forms.TreeNode
Résultat bool

LayoutTreeNode() public méthode

public LayoutTreeNode ( ) : System
Résultat System

LayoutTreeNode() public méthode

public LayoutTreeNode ( XmlNode config, SIL.Utils.StringTable stringTbl, string classParent ) : System
config System.Xml.XmlNode
stringTbl SIL.Utils.StringTable
classParent string
Résultat System