static private void ChangeSpriteView(int index) {//Inspector变更为SpriteList选择状态 Texture2D tex = null; string SpriteName = null; if ((m_projTreeView == null) || (m_spriteListView == null) || (m_inspector == null) || (index < 0)) { return; } //获取小图纹理 ListCtrlItem deleteItem = m_spriteListView.Items[m_spriteListView.LastSelectItem]; SpriteName = deleteItem.tooltip; tex = UIAtlasEditorModel.GetInstance().GetSpriteImageTexture(SpriteName); if (tex == null) { return; } ClearProjectView(); //更新Inspector视图至小图属性 m_inspector.onInspector = OnSpriteInspector; //更新当前小图的宽、高、缩放比例信息 UpdateSpriteSize(tex); //更新预览区域 UpdatePreViewWnd(tex); RequestRepaint(); }
public void AddItem(ListCtrlItem item) { items.Add(item); lastSelectItem = -1; //Add by liteng for MoveAtlas At 2014/1/4 m_SelectItems.Clear(); }
static void DeleteSpriteImage(object command) {//删除小图 if ((m_spriteListView == null) || (m_spriteListView.LastSelectItem < 0)) { return; } List <string> deleteSpriteName = new List <string>(); foreach (var index in m_spriteListView.SelectItems) { ListCtrlItem deleteItem = m_spriteListView.Items[index]; deleteSpriteName.Add(deleteItem.tooltip); } foreach (var item in deleteSpriteName) { AtlasDeleteSpriteImageCommand cmd = new AtlasDeleteSpriteImageCommand(); cmd.m_SpriteName = item; EditorCommandManager.GetInstance().Add(cmd); RegisterUndo("Delete SpriteImage"); } m_bIsOperateSaved = false; RequestRepaint(); }
static void RebuildUnUsedResourcesListView() { ListViewCtrl unUsedResListView = s_root.FindControl("_UnUsedResList") as ListViewCtrl; if (unUsedResListView == null) { return; } unUsedResListView.ClearItems(); List <U3DAssetInfo> unUsedAssets = ResourceManageToolModel.GetInstance().UnUsedAssetList; foreach (var asset in unUsedAssets) { ListCtrlItem newItem = new ListCtrlItem(); newItem.name = Path.GetFileName(asset.path); newItem.image = asset.icon; newItem.userObj = asset.guid; newItem.color = Color.white; newItem.onSelectColor = Color.red; unUsedResListView.AddItem(newItem); } RequestRepaint(); }
static private void AddProjectItem(string projectName) {//添加ProjectList Item if ((m_projTreeView == null) || (projectName == null)) { return; } ListCtrlItem newItem = new ListCtrlItem(); newItem.name = projectName; newItem.color = Color.white; newItem.onSelectColor = Color.blue; m_projTreeView.AddItem(newItem); //m_bIsOperateSaved = false; }
static private void AddSpriteItem(string spriteName) {//添加SpriteList Item if ((m_spriteListView == null) || (spriteName == null)) { return; } ListCtrlItem newItem = new ListCtrlItem(); newItem.name = Path.GetFileName(spriteName); newItem.image = UIAtlasEditorModel.GetInstance().GetSpriteZoomTexture(spriteName); newItem.tooltip = spriteName; newItem.color = Color.white; newItem.onSelectColor = Color.blue; m_spriteListView.AddItem(newItem); //m_bIsOperateSaved = false; }
static private void RemoveSpriteItem(string spriteName) {//删除SpriteList Item if (m_spriteListView == null) { return; } for (int i = 0; i < m_spriteListView.GetItemCount(); i++) { if (m_spriteListView.Items[i].tooltip == spriteName) { ListCtrlItem deleteItem = m_spriteListView.Items[i]; //从List中移除小图 m_spriteListView.RemoveItem(deleteItem); m_bIsOperateSaved = false; } } }
void FixSearchResultAndList(string searchName, List <AtlasInfoForSearchSprite> atlasInfoTbl) { if (null == atlasInfoTbl) { return; } ListViewCtrl searchList = _GetControl <ListViewCtrl>(m_SearchResultListName); if (null == searchList) { return; } searchList.ClearItems(); m_SearchResultInfo = new SearchResultInfo(); m_SearchResultInfo.SearchName = searchName; m_SearchResultInfo.SearchSpriteInfo = new List <SearchSpriteInfo>(); for (int index = 0; index < atlasInfoTbl.Count; index++) { foreach (var item in atlasInfoTbl[index].SpriteInfo) { SearchSpriteInfo newInfo = new SearchSpriteInfo(); newInfo.AtlasPath = atlasInfoTbl[index].AtlasPath; newInfo.AtlasTexture = atlasInfoTbl[index].AtlasTexture; newInfo.SpriteName = item.Key; newInfo.SpriteRect = item.Value; m_SearchResultInfo.SearchSpriteInfo.Add(newInfo); ListCtrlItem newItem = new ListCtrlItem(); newItem.name = item.Key + " " + newInfo.AtlasPath; newItem.color = Color.white; newItem.onSelectColor = Color.blue; searchList.AddItem(newItem); } } }
public int IndexOfItem(ListCtrlItem item) { return(items.IndexOf(item)); }
static void RebuildListViewAndTimeLineView() { var clip = SpecialEffectAnimClipEditorModel.GetInstance().CurrentClip; //更新ListView ListViewCtrl listView = GetListViewCtrl(); listView.ClearItems(); var previewAnimClip = clip.PreviewAnimClip; { ListCtrlItem item = new ListCtrlItem(); if (previewAnimClip != null) { item.name = previewAnimClip.name; } else { item.name = "空动作"; } item.image = UnityInternalIconCache.GetInstance().GetCacheIcon("UnityEditor.AnimationWindow"); listView.AddItem(item); } foreach (var item in clip.Clip.itemList) { ListCtrlItem listItem = new ListCtrlItem(); listItem.name = item.obj.name; if (item as SpecialEffectAnimClipAudioItem != null) { listItem.image = UnityInternalIconCache.GetInstance().GetCacheIcon("SceneViewAudio"); } else if (item as SpecialEffectAnimClipEffectItem != null) { listItem.image = UnityInternalIconCache.GetInstance().GetCacheIcon("AvatarPivot"); } listView.AddItem(listItem); } //更新TimeLineView TimeLineViewCtrl timeLineView = GetTimeLineViewCtrl(); timeLineView.Items.Clear(); { TimeLineItem item = new TimeLineItem(); item.startTime = 0.0f; if (previewAnimClip != null) { item.length = previewAnimClip.length; } else { item.length = 0.0f; } timeLineView.Items.Add(item); } foreach (var item in clip.Clip.itemList) { TimeLineItem timeLineItem = new TimeLineItem(); timeLineItem.startTime = item.StartTime; timeLineItem.length = item.Length; timeLineView.Items.Add(timeLineItem); } UpdatePreviewLength(); }
static void OnSpriteInspector(EditorControl c, object target) {//小图属性窗口显示 int w, h; string oldStr = null; string SpriteName = null; if ((m_spriteListView == null) || (m_spriteListView.LastSelectItem < 0)) { return; } ListCtrlItem deleteItem = m_spriteListView.Items[m_spriteListView.LastSelectItem]; SpriteName = deleteItem.tooltip; GUILayout.Space(20f); GUILayout.BeginHorizontal(); GUILayout.Label("宽高比", GUILayout.Width(60f)); GUILayout.TextField(m_aspecet.ToString(), GUILayout.Width(150)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("宽度", GUILayout.Width(60f)); GUI.SetNextControlName("宽度"); oldStr = m_spriteWidthStr; m_spriteWidthStr = GUILayout.TextField(m_spriteWidthStr, GUILayout.Width(150)); if ((GUI.GetNameOfFocusedControl() == "宽度") && (oldStr != m_spriteWidthStr)) { int.TryParse(m_spriteWidthStr, out w); h = (int)(w / m_aspecet); m_spriteHeightStr = h.ToString(); } GUILayout.Label("pix", GUILayout.Width(50f)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("高度", GUILayout.Width(60f)); GUI.SetNextControlName("高度"); oldStr = m_spriteHeightStr; m_spriteHeightStr = GUILayout.TextField(m_spriteHeightStr, GUILayout.Width(150)); if ((GUI.GetNameOfFocusedControl() == "高度") && (oldStr != m_spriteHeightStr)) { int.TryParse(m_spriteHeightStr, out h); w = (int)(h * m_aspecet); m_spriteWidthStr = w.ToString(); } GUILayout.Label("pix", GUILayout.Width(50f)); GUILayout.EndHorizontal(); if (Event.current.keyCode == KeyCode.Return && Event.current.type == EventType.Used) { if (GUI.GetNameOfFocusedControl() == "高度" || GUI.GetNameOfFocusedControl() == "宽度") { AtlasSpriteImage spriteImage = null; AtlasImageZoomCommand cmd = null; Texture2D tex = null; int.TryParse(m_spriteWidthStr, out w); int.TryParse(m_spriteHeightStr, out h); cmd = new AtlasImageZoomCommand(); UIAtlasEditorModel.GetInstance().GetSpriteImage(SpriteName, out spriteImage); tex = UIAtlasEditorModel.GetInstance().GetSpriteTexture(SpriteName); if (tex == null) { return; } cmd.m_oldScaleFactor = spriteImage.ZoomScale; cmd.m_newScaleFactor = (float)w / (float)tex.width; cmd.m_SpriteName = SpriteName; EditorCommandManager.GetInstance().Add(cmd); m_bIsOperateSaved = false; RegisterUndo("Zoom Image"); } } //RequestRepaint(); }