Ejemplo n.º 1
0
        private void OpenBuffer(IBuffer buffer)
        {
            var view = ViewManager.CreateView();

            FileCommandDispatcher.OpenBuffer(buffer, view);
            ViewManager.ActivateView(view);
        }
Ejemplo n.º 2
0
        public void OpenWorkspace(string dir)
        {
            var dirInfo = default(DirectoryInfo);

            if (!FileUtil.TryGetInfo(dir, out dirInfo))
            {
                App.Ext.Log($"Invalid directory path: {dir}", EntryType.Error);
                return;
            }

            var view = ViewManager.CreateView();

            if (App.Component <IWorkspaceController>().OpenWorkspace(view, dirInfo))
            {
                if (view.Workspace.FullName.Equals(dirInfo.FullName, StringComparison.OrdinalIgnoreCase))
                {
                    var setDir = new DirectoryInfo(Path.Combine(dirInfo.FullName, ".slot"));

                    if (!setDir.Exists)
                    {
                        setDir.Create();
                        FileUtil.WriteFile(Path.Combine(setDir.FullName, "settings.json"), "//Put your settings here", Encoding.UTF8);
                    }
                }

                ViewManager.ActivateView(view);
            }
        }
Ejemplo n.º 3
0
        private void OnOpenRegionView(ViewDetails details)
        {
            if (viewManager.ActivateView(details))
            {
                return;
            }

            viewManager.OpenView(details);
        }
Ejemplo n.º 4
0
        public void SwitchBuffer()
        {
            var buffers = bufferManager.EnumerateBuffers().ToList();

            if (buffers.Count < 2)
            {
                return;
            }

            var cur = ViewManager.ActiveView?.Buffer;
            var idx = cur != null?buffers.IndexOf(cur) : 0;

            if (switchBufferControl == null)
            {
                switchBufferControl = new SwitchBufferControl();
                switchBufferControl.CloseRequested += (o, ev) =>
                {
                    switchBufferControl.FindForm().Controls.Remove(switchBufferControl);
                    var newBuf = switchBufferControl.Buffers[switchBufferControl.SelectedIndex];
                    var view   = ViewManager.EnumerateViews()
                                 .FirstOrDefault(v => v.Buffer == newBuf);

                    if (view != null)
                    {
                        ViewManager.ActivateView(view);
                    }
                    else
                    {
                        OpenBuffer(newBuf);
                    }
                };
            }

            var oldFrm = switchBufferControl.FindForm();

            if (oldFrm != null)
            {
                oldFrm.Controls.Remove(switchBufferControl);
            }

            var frm = Form.ActiveForm;

            switchBufferControl.Buffers       = buffers;
            switchBufferControl.Width         = frm.Width / 3;
            switchBufferControl.Height        = switchBufferControl.CalculateHeight();
            switchBufferControl.Left          = (frm.Width - switchBufferControl.Width) / 2;
            switchBufferControl.Top           = (frm.Height - switchBufferControl.Height) / 2;
            switchBufferControl.SelectedIndex = idx + 1 >= buffers.Count ? 0 : idx + 1;
            frm.Controls.Add(switchBufferControl);
            switchBufferControl.BringToFront();
            switchBufferControl.Focus();
        }
Ejemplo n.º 5
0
        private void StartTask(TaskArgumentsHolder args)
        {
            ControllerBase firstController = ControllerFactory.Create(_startView.Name, this);

            firstController.EnterTask(null);
            CurrentState.CurrentView = _startView.Name;
            CurrentState.Save();
            try
            {
                ViewManager.ActivateView(null, _startView.Name, this, args);
            }
            catch (System.Threading.ThreadAbortException) {}
            catch (Exception ex)
            {
                throw new UIPException(Resource.ResourceManager.FormatMessage(Resource.Exceptions.RES_ExceptionCantActivateView, _startView.Name) + UIPException.GetFirstExceptionMessage(ex), ex);
            }
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Activates the next view.
        /// </summary>
        /// <param name="nextView">The name of the next view to be activated.</param>
        public override void Navigate(string nextView)
        {
            string previousView = CurrentState.CurrentView;

            CurrentState.CurrentView   = nextView;
            CurrentState.NavigateValue = "";

            UIPManager.InvokeEventHandlers(CurrentState);
            CurrentState.Save();
            try
            {
                ViewManager.ActivateView(previousView, CurrentState.CurrentView, this);
            }
            catch (System.Threading.ThreadAbortException) {}
            catch (Exception ex)
            {
                throw new UIPException(Resource.ResourceManager.FormatMessage(Resource.Exceptions.RES_ExceptionCantActivateView, nextView) + UIPException.GetFirstExceptionMessage(ex), ex);
            }
        }
Ejemplo n.º 7
0
        private void StartTask(TaskArgumentsHolder args)
        {
            FormSettings hostSettings      = _settings[_settings.StartFormName];
            ViewSettings startFormSettings = UIPConfiguration.Config.GetViewSettingsFromName(hostSettings.Name);

            CurrentState.CurrentView = startFormSettings.Name;

            try
            {
                ViewManager.ActivateView(null, startFormSettings.Name, this, args);
            }
            catch (System.Threading.ThreadAbortException) {}
            catch (Exception ex)
            {
                throw new UIPException(Resource.ResourceManager.FormatMessage(Resource.Exceptions.RES_ExceptionCantActivateView, startFormSettings.Name) + UIPException.GetFirstExceptionMessage(ex), ex);
            }
            CurrentState.Save();
            if (hostSettings.InitialView != null)
            {
                Navigate(hostSettings.InitialView);
            }
        }
Ejemplo n.º 8
0
        private void StartTask(TaskArgumentsHolder holder)
        {
            CurrentState.NavigationGraph = Name;
            if (CurrentState.CurrentView != null && CurrentState.CurrentView.Length > 0)
            {
                _startView = UIPConfiguration.Config.GetViewSettingsFromName(CurrentState.CurrentView);
            }
            ControllerBase firstController = ControllerFactory.Create(StartView.Name, this);

            firstController.EnterTask(holder);
            CurrentState.CurrentView   = StartView.Name;
            CurrentState.NavigateValue = "";
            CurrentState.Save();

            try
            {
                ViewManager.ActivateView(null, StartView.Name, this);
            }
            catch (System.Threading.ThreadAbortException) {}
            catch (Exception ex)
            {
                throw new UIPException(Resource.ResourceManager.FormatMessage(Resource.Exceptions.RES_ExceptionCantActivateView, StartView.Name) + UIPException.GetFirstExceptionMessage(ex), ex);
            }
        }
Ejemplo n.º 9
0
 /// <summary>
 /// Activates the next view.
 /// </summary>
 /// <param name="previousView">The view currently displayed.</param>
 /// <param name="currentView">The name of the view to be displayed next.</param>
 protected virtual void ActivateNextView(string previousView, string currentView)
 {
     ViewManager.ActivateView(previousView, CurrentState.CurrentView, this);
 }