public void HandleTreeViewRightClick(TreeNode rightClickedTreeNode, ContextMenuStrip menuToModify)
        {
            ReferencedFileSave rfs;

            var getIfShouldShowMenu = GetIfShouldShowRightClickOption(rightClickedTreeNode, out rfs);

            List <string> availableAtlases = null;

            if (getIfShouldShowMenu)
            {
                string fullFileName = GlueCommands.Self.GetAbsoluteFileName(rfs);

                if (System.IO.File.Exists(fullFileName))
                {
                    // This might be slow, we may want to cache it:
                    TpsLoadResult tpsLoadResult;
                    var           model = TpsFileSave.Load(fullFileName, out tpsLoadResult);

                    var succeeded = string.IsNullOrEmpty(tpsLoadResult.ErrorMessage) &&
                                    string.IsNullOrEmpty(tpsLoadResult.MissingFile);

                    if (succeeded)
                    {
                        availableAtlases = model.AtlasFilters
                                           .Select(item =>
                        {
                            if (item.EndsWith("/"))
                            {
                                return(item.Substring(0, item.Length - 1));
                            }
                            else
                            {
                                return(item);
                            }
                        })
                                           .ToList();
                    }
                }
            }

            if (availableAtlases != null && availableAtlases.Count > 0)
            {
                var menuToAddTo = new ToolStripMenuItem("Include Atlas");
                menuToModify.Items.Add(menuToAddTo);

                foreach (var item in availableAtlases)
                {
                    var atlasMenuItem = new ToolStripMenuItem(item);
                    atlasMenuItem.Click += HandleScreenToAddClick;
                    menuToAddTo.DropDownItems.Add(atlasMenuItem);
                }
            }
        }
        private void LoadFileFromRfs(ReferencedFileSave referencedFile)
        {
            string absoluteFileName = GlueCommands.Self.GetAbsoluteFileName(referencedFile);

            if (System.IO.File.Exists(absoluteFileName))
            {
                TpsLoadResult result;
                loadedFile = TpsFileSave.Load(absoluteFileName, out result);
            }
            else
            {
                loadedFile = null;
            }
        }
Example #3
0
        public void SetFrom(TpsFileSave model)
        {
            SuppressChangedEvents = true;
            Atlases.Clear();


            foreach (var item in model.AtlasFilters)
            {
                var vm = new AtlasViewModel();
                vm.Folder = item;
                Atlases.Add(vm);
            }
            SuppressChangedEvents = false;
        }
        public void SetRfs(ReferencedFileSave referencedFile)
        {
            referencedFileSave = referencedFile;


            if (referencedFileSave != null)
            {
                LoadFileFromRfs(referencedFileSave);
                viewModel.SetFrom(loadedFile);
            }
            else
            {
                loadedFile = null;
            }
        }
        public void SetFrom(TpsFileSave model)
        {
            SuppressChangedEvents = true;
            Atlases.Clear();


            foreach(var item in model.AtlasFilters)
            {
                var vm = new AtlasViewModel();
                vm.Folder = item;
                Atlases.Add(vm);
            }
            SuppressChangedEvents = false;

        }
        public void CreateNewProject()
        {
            var newTps = new TpsFileSave();

            newTps.SetDefaultValues();

            string fileName = AtlasFolder + "TexturePackerProject.tps";

            newTps.Save(fileName);

            bool userCancelled = false;

            // Select the Global Content tree node to add the file there:
            GlueState.Self.CurrentTreeNode = FlatRedBall.Glue.FormHelpers.ElementViewWindow.GlobalContentFileNode;


            var rfs = FlatRedBall.Glue.FormHelpers.RightClickHelper.AddSingleFile(
                fileName, ref userCancelled);

            GlueState.Self.CurrentReferencedFileSave = rfs;
        }
Example #7
0
        public void CreateNewProject()
        {
            var newTps = new TpsFileSave();
            newTps.SetDefaultValues();

            string fileName = AtlasFolder + "TexturePackerProject.tps";

            newTps.Save(fileName);

            bool userCancelled = false;

            // Select the Global Content tree node to add the file there:
            GlueState.Self.CurrentTreeNode = FlatRedBall.Glue.FormHelpers.ElementViewWindow.GlobalContentFileNode;


            var rfs = FlatRedBall.Glue.FormHelpers.RightClickHelper.AddSingleFile(
                    fileName, ref userCancelled);

            GlueState.Self.CurrentReferencedFileSave = rfs;


        }
Example #8
0
        private void LoadFileFromRfs(ReferencedFileSave referencedFile)
        {
            string absoluteFileName = GlueCommands.Self.GetAbsoluteFileName(referencedFile);

            if (System.IO.File.Exists(absoluteFileName))
            {

                TpsLoadResult result;
                loadedFile = TpsFileSave.Load(absoluteFileName, out result);
            }
            else
            {
                loadedFile = null;
            }
        }
Example #9
0
        public void SetRfs(ReferencedFileSave referencedFile)
        {
            referencedFileSave = referencedFile;


            if (referencedFileSave != null)
            {
                LoadFileFromRfs(referencedFileSave);
                viewModel.SetFrom(loadedFile);
            }
            else
            {
                loadedFile = null;
            }
        }