public void BuilderInWorldQuickBar() { BuilderInWorldTestHelper.CreateTestCatalogLocalSingleObject(); CatalogItem item = DataStore.i.builderInWorld.catalogItemDict.GetValues()[0]; CatalogItemAdapter adapter = BuilderInWorldTestHelper.CreateCatalogItemAdapter(gameObjectToUse); adapter.SetContent(item); CatalogAssetGroupAdapter groupAdatper = new CatalogAssetGroupAdapter(); groupAdatper.AddAdapter(adapter); CatalogGroupListView catalogGroupListView = new CatalogGroupListView(); catalogGroupListView.AddAdapter(groupAdatper); catalogGroupListView.generalCanvas = Utils.GetOrCreateComponent <Canvas>(gameObjectToUse); QuickBarView quickBarView = new QuickBarView(); quickBarView.catalogGroupListView = catalogGroupListView; QuickBarController quickBarController = new QuickBarController(quickBarView); int slots = quickBarController.GetSlotsCount(); quickBarView.shortcutsImgs = new QuickBarSlot[slots]; for (int i = 0; i < slots; i++) { quickBarView.SetIndexToDrop(i); adapter.AdapterStartDragging(null); quickBarView.SceneObjectDropped(null); Assert.AreEqual(item, quickBarController.QuickBarObjectSelected(i)); } }
public void AddAdapter(CatalogItemAdapter adapter) { adapter.OnCatalogItemClicked += CatalogItemClicked; adapter.OnCatalogItemFavorite += CatalogItemFavorite; adapter.OnAdapterStartDrag += AdapterStartDragging; adapter.OnAdapterDrag += OnDrag; adapter.OnAdapterEndDrag += OnEndDrag; }
public void SceneObjectDroppedFromCatalog(BaseEventData data) { CatalogItemAdapter adapter = sceneCatalogController.GetLastCatalogItemDragged(); if (adapter != null) { SetCatalogItemToShortcut(adapter.GetContent()); } }
public void UnsubscribeToEvents(CatalogItemAdapter adapter) { adapter.OnCatalogItemClicked -= CatalogItemClicked; adapter.OnCatalogItemFavorite -= CatalogItemFavorite; adapter.OnAdapterStartDrag -= AdapterStartDragging; adapter.OnAdapterDrag -= OnDrag; adapter.OnAdapterEndDrag -= OnEndDrag; adapter.OnPointerEnterInAdapter -= OnPointerEnter; adapter.OnPointerExitInAdapter -= OnPointerExit; }
public void SetContent(string category, List <CatalogItem> catalogItemList) { categoryTxt.text = category.ToUpper(); RemoveAdapters(); foreach (CatalogItem catalogItem in catalogItemList) { CatalogItemAdapter adapter = Instantiate(catalogItemAdapterPrefab, categoryContentGO.transform).GetComponent <CatalogItemAdapter>(); adapter.SetContent(catalogItem); SubscribeToEvents(adapter); } }
public void SceneObjectDropped(BaseEventData data) { CatalogItemAdapter adapter = catalogGroupListView.GetLastCatalogItemDragged(); CatalogItem catalogItem = adapter.GetContent(); if (adapter.thumbnailImg.enabled) { Texture texture = adapter.thumbnailImg.texture; SetQuickBarShortcut(catalogItem, lastIndexDroped, texture); } }
public void SceneObjectDropped() { CatalogItemAdapter adapter = catalogGroupListView.GetLastSceneObjectDragged(); if (adapter == null) { return; } SceneObject sceneObject = adapter.GetContent(); OnSceneObjectDropped?.Invoke(sceneObject); }
public void RemoveAdapters() { for (int i = 0; i < categoryContentGO.transform.childCount; i++) { CatalogItemAdapter toRemove = categoryContentGO.transform.GetChild(i).GetComponent <CatalogItemAdapter>(); if (toRemove != null) { UnsubscribeToEvents(toRemove); Destroy(toRemove.gameObject); } } }
public void CatalogitemDropped() { CatalogItemAdapter adapter = catalogGroupListView.GetLastCatalogItemDragged(); if (adapter == null) { return; } CatalogItem catalogItem = adapter.GetContent(); OnCatalogItemDropped?.Invoke(catalogItem); }
public void SceneObjectDroppedFromCatalog(BaseEventData data) { CatalogItemAdapter adapter = sceneCatalogController.GetLastCatalogItemDragged(); if (adapter != null && adapter.thumbnailImg != null && adapter.thumbnailImg.enabled) { Texture texture = adapter.thumbnailImg.texture; CatalogItem catalogItem = adapter.GetContent(); SetQuickBarShortcut(catalogItem, lastIndexDroped, texture); } }
public void ToggleFavoriteState(CatalogItem catalogItem, CatalogItemAdapter adapter) { if (!favoritesCatalogItems.Contains(catalogItem)) { favoritesCatalogItems.Add(catalogItem); catalogItem.SetFavorite(true); } else { favoritesCatalogItems.Remove(catalogItem); catalogItem.SetFavorite(false); } adapter?.SetFavorite(catalogItem.IsFavorite()); }
public void SetContent(string category, List <SceneObject> sceneObjectsList) { categoryTxt.text = category.ToUpper(); RemoveAdapters(); foreach (SceneObject sceneObject in sceneObjectsList) { CatalogItemAdapter adapter = Instantiate(catalogItemAdapterPrefab, categoryContentGO.transform).GetComponent <CatalogItemAdapter>(); adapter.SetContent(sceneObject); adapter.OnSceneObjectClicked += SceneObjectClicked; adapter.OnSceneObjectFavorite += SceneObjectFavorite; adapter.OnAdapterStartDrag += AdapterStartDragging; adapter.OnAdapterDrag += OnDrag; adapter.OnAdapterEndDrag += OnEndDrag; } }
public void ToggleFavoriteState(SceneObject sceneObject, CatalogItemAdapter adapter) { if (!favoritesSceneObjects.Contains(sceneObject)) { favoritesSceneObjects.Add(sceneObject); sceneObject.isFavorite = true; } else { favoritesSceneObjects.Remove(sceneObject); sceneObject.isFavorite = false; } adapter.SetFavorite(sceneObject.isFavorite); }
public static CatalogItemAdapter CreateCatalogItemAdapter(GameObject gameObject) { CatalogItemAdapter adapter = Utils.GetOrCreateComponent <CatalogItemAdapter>(gameObject); adapter.onFavoriteColor = Color.white; adapter.offFavoriteColor = Color.white; adapter.favImg = Utils.GetOrCreateComponent <Image>(gameObject); adapter.smartItemGO = gameObject; adapter.lockedGO = gameObject; adapter.canvasGroup = Utils.GetOrCreateComponent <CanvasGroup>(gameObject); GameObject newGameObject = new GameObject(); newGameObject.transform.SetParent(gameObject.transform); adapter.thumbnailImg = Utils.GetOrCreateComponent <RawImage>(newGameObject); return(adapter); }
private void AdapterStartDragging(CatalogItem catalogItemClicked, CatalogItemAdapter adapter, BaseEventData data) { PointerEventData eventData = data as PointerEventData; if (draggedObject == null) { draggedObject = Instantiate(adapter.gameObject, generalCanvas.transform); } CatalogItemAdapter newAdapter = draggedObject.GetComponent <CatalogItemAdapter>(); RectTransform adapterRT = adapter.GetComponent <RectTransform>(); newAdapter.SetContent(adapter.GetContent()); newAdapter.EnableDragMode(adapterRT.sizeDelta); catalogItemAdapterDragged = newAdapter; OnStopInput?.Invoke(); }
public void BuilderInWorldQuickBar() { BIWTestHelper.CreateTestCatalogLocalSingleObject(); CatalogItem item = DataStore.i.dataStoreBuilderInWorld.catalogItemDict.GetValues()[0]; CatalogItemAdapter adapter = BIWTestHelper.CreateCatalogItemAdapter(gameObjectToUse); adapter.SetContent(item); CatalogAssetGroupAdapter groupAdapter = new GameObject("_CatalogAssetGroupAdapter").AddComponent <CatalogAssetGroupAdapter>(); groupAdapter.SubscribeToEvents(adapter); CatalogGroupListView catalogGroupListView = new GameObject("_CatalogGroupListView").AddComponent <CatalogGroupListView>(); catalogGroupListView.SubscribeToEvents(groupAdapter); catalogGroupListView.generalCanvas = Utils.GetOrCreateComponent <Canvas>(gameObjectToUse); SceneCatalogView sceneCatalogView = SceneCatalogView.Create(); sceneCatalogView.catalogGroupListView = catalogGroupListView; SceneCatalogController sceneCatalogController = new SceneCatalogController(); QuickBarView quickBarView = QuickBarView.Create(); QuickBarController quickBarController = new QuickBarController(); sceneCatalogController.Initialize(sceneCatalogView, quickBarController); quickBarController.Initialize(quickBarView, sceneCatalogController); int slots = quickBarController.GetSlotsCount(); quickBarView.shortcutsImgs = new QuickBarSlot[slots]; for (int i = 0; i < slots; i++) { quickBarController.SetIndexToDrop(i); adapter.AdapterStartDragging(null); quickBarController.SetQuickBarShortcut(item, i, new Texture2D(10, 10)); Assert.AreEqual(item, quickBarController.QuickBarObjectSelected(i)); } }
private void OnPointerExit(PointerEventData eventData, CatalogItemAdapter adapter) { OnPointerExitInCatalogItemAdapter?.Invoke(eventData, adapter); }
void AdapterStartDragging(SceneObject sceneObjectClicked, CatalogItemAdapter adapter, BaseEventData data) { OnAdapterStartDragging?.Invoke(sceneObjectClicked, adapter, data); }
void SceneObjectFavorite(SceneObject sceneObjectClicked, CatalogItemAdapter adapter) { OnSceneObjectFavorite?.Invoke(sceneObjectClicked, adapter); }
private void CatalogItemFavorite(CatalogItem sceneObject, CatalogItemAdapter adapter) { OnCatalogItemFavorite?.Invoke(sceneObject, adapter); }
private void AdapterStartDragging(CatalogItem catalogItemClicked, CatalogItemAdapter adapter, BaseEventData data) { OnAdapterStartDragging?.Invoke(catalogItemClicked, adapter, data); }
private void CatalogItemFavorite(CatalogItem catalogItemClicked, CatalogItemAdapter adapter) { OnCatalogItemFavorite?.Invoke(catalogItemClicked, adapter); }
private void ShowTooltipForCatalogItemAdapter(PointerEventData data, CatalogItemAdapter adapter) { controllers.tooltipController.SetTooltipText(adapter.GetContent().name); controllers.tooltipController.ShowTooltip(data, catalogItemTooltipOffset); }