Quintiq file version 2.0
|
#parent: #root
|
Method SynchronizeExtensions (JSON jsondata)
|
{
|
TextBody:
|
[*
|
old := selectset( this, Extensions, extension, true );
|
new := construct( Lib3DS_Extensions );
|
|
interfacedata := guard( jsondata.Get( 'interface' ), null( JSON, owning ) );
|
|
if( not isnull( interfacedata ) )
|
{
|
if( interfacedata.IsArray() )
|
{
|
for( i := 0; i < interfacedata.Size(); i++ )
|
{
|
extension := Lib3DS_Extension::FindOrCreate( this, interfacedata.Get( i ).GetString() );
|
new.Add( extension );
|
}
|
}
|
else if( interfacedata.IsString() and interfacedata.GetString() <> '' )
|
{
|
extension := Lib3DS_Extension::FindOrCreate( this, interfacedata.GetString() );
|
new.Add( extension );
|
}
|
}
|
|
deleted := old.Difference( new );
|
Lib3DS_Extension::Delete( deleted );
|
*]
|
InterfaceProperties { Accessibility: 'Module' }
|
}
|