AddRefChildNodeDefinition linia 508, TSInfoFiles.pp
private procedure AddRefChildNodeDefinition(AChildNode: TTSInfoNode);
Metoda umożliwiająca zapis definicji referencjonowanego węzła potomnego.
parametry | |
---|---|
AChildNode | referencja do instancji klasy TTSInfoNode zapisywanego referencjonowanego węzła potomnego |
Służy do zapisu do docelowej listy z pola FOutput kompletnej definicji referencjonowanego węzła potomnego, do obiektu którego referencja przekazana jest w parametrze AChildNode klasy TTSInfoNode.
Jeśli węzeł posiada komentarz definicji, zapisywany jest za pomocą metody AddComment jako pierwszy. Następnie dodawana jest do listy linia z nagłówkiem węzła, zawierającym odpowiednią frazę kluczową oraz identyfikator. W następnej kolejności, za pomocą metody IncIndentation zwiększany jest pomocniczy łańcuch znaków wcięcia o jeden poziom i zapisywane są dane wszystkich elementów zawartych w serializowanym węźle. Do tego celu wykorzystywane są metody AddChildNodeAttributes oraz AddChildNodeChildNodes. Po zapisie danych elementów, wcięcie zmniejszane jest z powrotem o jeden poziom za pomocą metody DecIndentation oraz dodawana jest linia z odpowiednią frazą kluczową, zakańczającą ciało referencjonowanego węzła.
Metoda zawsze dodaje pustą linię przed definicją serializowanego węzła, a także zawsze ustawia wartość pola FExtraSpaceNeeded na wartość True. Dzięki temu definicja każdego węzła referencjonowanego poprzedzona jest pustą linią, a także każdy element definiowany po referencjonowanym węźle także będzie pustą linią poprzedzony.
W tej metodzie inicjowana jest także wartość pola FNestedRefElementsCount, służącego do przechowywania liczby referencjonowanych elementów, bezpośrednio zagnieżdżonych w serializowanym węźle referencjonowanym.
Wykorzystywana jest jedynie w metodzie ProcessReferencingPart, do zapisu definicji wszystkich referencjonowanych węzłów istniejących w serializowanym drzewie.
zobacz też: