//---------------------------------------------------------------------------------------------------------------------- private void SetupInternal(VisualElement root) { m_dccStatusLabels.Clear(); m_dccContainers.Clear(); m_root = root; m_root.Clear(); m_installPluginButtons.Clear(); VisualTreeAsset container = UIElementsEditorUtility.LoadVisualTreeAsset( MeshSyncEditorConstants.DCC_TOOLS_SETTINGS_CONTAINER_PATH ); VisualTreeAsset dccToolInfoTemplate = UIElementsEditorUtility.LoadVisualTreeAsset( MeshSyncEditorConstants.DCC_TOOL_INFO_TEMPLATE_PATH ); TemplateContainer containerInstance = container.CloneTree(); ScrollView scrollView = containerInstance.Query <ScrollView>().First(); //Buttons Button autoDetectDCCButton = containerInstance.Query <Button>("AutoDetectDCCButton").First(); autoDetectDCCButton.clickable.clicked += OnAutoDetectDCCButtonClicked; m_checkPluginUpdatesButton = containerInstance.Query <Button>("ChecksPluginUpdatesButton").First(); m_checkPluginUpdatesButton.clickable.clicked += OnCheckPluginUpdatesButtonClicked; Button addDCCToolButton = containerInstance.Query <Button>("AddDCCToolButton").First(); addDCCToolButton.userData = scrollView; addDCCToolButton.clickable.clickedWithEventInfo += OnAddDCCToolButtonClicked; //Label m_footerStatusLabel = containerInstance.Query <Label>("FooterStatusLabel").First(); //Add detected DCCTools to ScrollView MeshSyncEditorSettings settings = MeshSyncEditorSettings.GetOrCreateSettings(); foreach (KeyValuePair <string, DCCToolInfo> dccToolInfo in settings.GetDCCToolInfos()) { AddDCCToolSettingsContainer(dccToolInfo.Value, scrollView, dccToolInfoTemplate); } //Add the container of this tab to root root.Add(containerInstance); }
//---------------------------------------------------------------------------------------------------------------------- public void Setup(VisualElement root) { m_dccStatusLabels.Clear(); m_dccContainers.Clear(); m_root = root; m_root.Clear(); VisualTreeAsset container = UIElementsEditorUtility.LoadVisualTreeAsset( MeshSyncEditorConstants.DCC_TOOLS_SETTINGS_CONTAINER_PATH ); VisualTreeAsset dccToolInfoTemplate = UIElementsEditorUtility.LoadVisualTreeAsset( MeshSyncEditorConstants.DCC_TOOL_INFO_TEMPLATE_PATH ); TemplateContainer containerInstance = container.CloneTree(); ScrollView scrollView = containerInstance.Query <ScrollView>().First(); //[TODO-sin: 2020-4-24] Auto detect installed DCC tools + check MeshSync status MeshSyncEditorSettings settings = MeshSyncEditorSettings.GetOrCreateSettings(); foreach (var dccToolInfo in settings.GetDCCToolInfos()) { AddDCCToolSettingsContainer(dccToolInfo.Value, scrollView, dccToolInfoTemplate); } //Buttons Button autoDetectButton = containerInstance.Query <Button>("AutoDetectButton").First(); autoDetectButton.clickable.clicked += OnAutoDetectButtonClicked; Button addDCCToolButton = containerInstance.Query <Button>("AddDCCToolButton").First(); addDCCToolButton.clickable.clicked += OnAddDCCToolButtonClicked; //Add the container of this tab to root root.Add(containerInstance); }