コード例 #1
0
        /// <summary>
        /// Изменен файл текстуры
        /// </summary>
        private void skyTexture_FileChanged(object sender, EventArgs e)
        {
            Skybox.Side       side = Skybox.Side.Front;
            Project.Entry     file = frontSkyTexture.File;
            NSFileDropControl s    = sender as NSFileDropControl;

            if (s == topSkyTexture)
            {
                file = topSkyTexture.File;
                side = Skybox.Side.Top;
            }
            else if (s == bottomSkyTexture)
            {
                file = bottomSkyTexture.File;
                side = Skybox.Side.Bottom;
            }
            else if (s == leftSkyTexture)
            {
                file = leftSkyTexture.File;
                side = Skybox.Side.Left;
            }
            else if (s == rightSkyTexture)
            {
                file = rightSkyTexture.File;
                side = Skybox.Side.Right;
            }
            else if (s == backSkyTexture)
            {
                file = backSkyTexture.File;
                side = Skybox.Side.Back;
            }

            (FileEditor as SkyboxEditor).TextureChanged(side, file);
        }
コード例 #2
0
        /// <summary>
        /// Обновление файловой системы
        /// </summary>
        /// <param name="en">Файл</param>
        /// <param name="ev">Событие</param>
        public override void ProjectEntryEvent(Project.Entry en, Project.FileEvent ev)
        {
            base.ProjectEntryEvent(en, ev);
            if (closed)
            {
                return;
            }

            // Просмотр на изменение текстур
            SkyboxForm fr = Form as SkyboxForm;

            NSFileDropControl[] drops = new NSFileDropControl[] {
                fr.frontSkyTexture, fr.rightSkyTexture, fr.backSkyTexture, fr.leftSkyTexture, fr.topSkyTexture, fr.bottomSkyTexture
            };
            forceTextureReload = true;
            foreach (NSFileDropControl fc in drops)
            {
                if (fc.File == en)
                {
                    if (ev == Project.FileEvent.Deleted)
                    {
                        fc.File = null;
                    }
                    else
                    {
                        fc.File = en;
                    }
                }
            }
            forceTextureReload = false;
        }