La realizzazione del layout desiderato per il pacchetto dipende dai tipi di nodi che verranno inclusi nel pacchetto. I nodi derivati da NodeModel, i nodi zero-touch e i nodi personalizzati hanno tutti un processo leggermente diverso per la definizione della categorizzazione. È possibile combinare questi tipi di nodi all'interno dello stesso pacchetto, ma sarà necessaria una combinazione delle strategie descritte di seguito.
Per default, le librerie NodeModel vengono organizzate in base alla struttura delle classi.
Il nodo si troverà in Moduli aggiuntivi in:
È inoltre possibile eseguire l'override della categoria utilizzando l'attributo NodeCategory nella classe o nel costruttore come mostrato di seguito.
Il nodo si troverà ora in Moduli aggiuntivi in:
Per default, anche le librerie zero-touch vengono organizzate in base alla struttura delle classi.
Il nodo si troverà in Moduli aggiuntivi in:
È inoltre possibile sostituire la posizione della struttura delle classi utilizzando un file XML di personalizzazione di Dynamo.
Il file XML deve essere denominato di conseguenza ed essere incluso nella cartella extra
del pacchetto.
PackageName_DynamoCustomization.xml
I nodi personalizzati vengono organizzati in base al parametro Category Name
specificato durante la creazione dei nodi (utilizzando la nuova finestra di dialogo Nodo personalizzato).
AVVISO
L'utilizzo della notazione con il punto nei nomi o nelle categorie dei nodi determinerà ulteriori sottocategorie nidificate. Il segno .
fungerà da delimitatore per determinare la gerarchia aggiuntiva. Questo è un nuovo comportamento nella libreria per Dynamo 2.0.
Il nome della categoria può essere successivamente aggiornato nel file .dyf (XML o JSON)
Quando l'autore di un pacchetto decide di rinominare un nodo precedentemente esistente in una nuova release, dovrebbe fornire un mezzo per eseguire la migrazione dei grafici che contengono nodi con i vecchi nomi. Questa operazione può essere eseguita nei seguenti modi:
I nodi zero-touch utilizzano un file di Namespace.Migrations.XML
che si trova nella cartella bin
dei pacchetti, ad esempio:
Da MyZeroTouchLib.MyNodes.SayHello
a MyZeroTouchLib.MyNodes.SayHelloRENAMED
I nodi derivati da NodeModel utilizzano l'attributo AlsoKnownAs
nella classe, ad esempio:
Da SampleLibraryUI.Examples.DropDownExample
a SampleLibraryUI.Examples.DropDownExampleRENAMED