コード例 #1
0
        protected async override void OnRun()
        {
            var     selectedItem = IdeApp.ProjectOperations.CurrentSelectedItem;
            string  filePath     = null;
            Project project      = null;

            if (selectedItem is Project project1)
            {
                project  = project1;
                filePath = project1.FileName.ParentDirectory;
            }
            else if (selectedItem is ProjectFolder projectItem)
            {
                project  = projectItem.Project;
                filePath = projectItem.Path.FullPath;
            }
            else
            {
                return;
            }

            var figmaBundleWindow = new GenerateViewsWindow(filePath, project);

            figmaBundleWindow.Appearance = ViewHelpers.GetCurrentIdeAppearance();
            await figmaBundleWindow.LoadAsync();

            var currentIdeWindow = Components.Mac.GtkMacInterop.GetNSWindow(IdeApp.Workbench.RootWindow);

            currentIdeWindow.AddChildWindow(figmaBundleWindow, AppKit.NSWindowOrderingMode.Above);
            MessageService.PlaceDialog(figmaBundleWindow, MessageService.RootWindow);
            IdeServices.DesktopService.FocusWindow(figmaBundleWindow);
        }
コード例 #2
0
        protected override void OnRun()
        {
            //when window is closed we need to create all the stuff
            Project currentProject = null;

            if (IdeApp.ProjectOperations.CurrentSelectedItem is Project project)
            {
                currentProject = project;
            }
            else if (IdeApp.ProjectOperations.CurrentSelectedItem is ProjectFolder projectFolder &&
                     projectFolder.IsFigmaDirectory())
            {
                currentProject = projectFolder.Project;
            }

            if (currentProject == null)
            {
                return;
            }

            var figmaBundleWindow = new FigmaPackageWindow(currentProject);

            figmaBundleWindow.Appearance = ViewHelpers.GetCurrentIdeAppearance();
            var currentIdeWindow = Components.Mac.GtkMacInterop.GetNSWindow(IdeApp.Workbench.RootWindow);

            currentIdeWindow.AddChildWindow(figmaBundleWindow, AppKit.NSWindowOrderingMode.Above);
            MessageService.PlaceDialog(figmaBundleWindow, MessageService.RootWindow);
            IdeServices.DesktopService.FocusWindow(figmaBundleWindow);
        }
コード例 #3
0
        protected override void OnRun()
        {
            var currentFolder = IdeApp.ProjectOperations.CurrentSelectedItem as ProjectFolder;

            if (currentFolder == null)
            {
                return;
            }

            var bundle            = FigmaBundle.FromDirectoryPath(currentFolder.Path.FullPath);
            var figmaBundleWindow = new PackageUpdateWindow();

            figmaBundleWindow.Appearance = ViewHelpers.GetCurrentIdeAppearance();
            figmaBundleWindow.Load(bundle, currentFolder.Project);

            var currentIdeWindow = Components.Mac.GtkMacInterop.GetNSWindow(IdeApp.Workbench.RootWindow);

            currentIdeWindow.AddChildWindow(figmaBundleWindow, AppKit.NSWindowOrderingMode.Above);
            MessageService.PlaceDialog(figmaBundleWindow, MessageService.RootWindow);
            IdeServices.DesktopService.FocusWindow(figmaBundleWindow);
        }