// implements ISpriteEditorModule

        public override void OnModuleActivate()
        {
            spriteImportMode      = SpriteFrameModule.GetSpriteImportMode(spriteEditor.GetDataProvider <ISpriteEditorDataProvider>());
            m_TextureDataProvider = spriteEditor.GetDataProvider <ITextureDataProvider>();
            m_SpriteDataProvider  = spriteEditor.GetDataProvider <ISpriteEditorDataProvider>();
            int width, height;

            m_TextureDataProvider.GetTextureActualWidthAndHeight(out width, out height);
            textureActualWidth       = width;
            textureActualHeight      = height;
            m_RectsCache             = ScriptableObject.CreateInstance <SpriteRectModel>();
            m_RectsCache.hideFlags   = HideFlags.HideAndDontSave;
            m_RectsCache.spriteRects = m_SpriteDataProvider.GetSpriteRects().ToList();
            spriteEditor.spriteRects = m_RectsCache.spriteRects;
            if (spriteEditor.selectedSpriteRect != null)
            {
                spriteEditor.selectedSpriteRect = m_RectsCache.spriteRects.FirstOrDefault(x => x.spriteID == spriteEditor.selectedSpriteRect.spriteID);
            }
            AddMainUI(spriteEditor.GetMainVisualContainer());
            undoSystem.RegisterUndoCallback(UndoCallback);
        }
 public override bool CanBeActivated()
 {
     return(SpriteFrameModule.GetSpriteImportMode(spriteEditorWindow.GetDataProvider <ISpriteEditorDataProvider>()) != SpriteImportMode.None);
 }
 public override bool CanBeActivated()
 {
     return(SpriteFrameModule.GetSpriteImportMode(spriteEditor.GetDataProvider <ISpriteEditorDataProvider>()) == SpriteImportMode.Polygon);
 }