Exemple #1
0
        public DocumentPage AddNewDocumentPage(WorkDocument workDocument = null)
        {
            var newDocumentPage = new DocumentPage(workDocument);

            _editorAdapters.Add(newDocumentPage.EditorAdapter);

            AddDocumentTabItemContextMenuCommandBindings(newDocumentPage);

            DocumentTabControl.Items.Insert(DocumentTabControl.Items.Count - 1, newDocumentPage.TabItem);
            DocumentTabControl.SelectedItem = newDocumentPage.TabItem;

            _findReplaceManager.CurrentEditor = newDocumentPage.EditorAdapter;

            return(newDocumentPage);
        }
Exemple #2
0
        internal bool CloseDocument(DocumentPage document)
        {
            DocumentTabControl.SelectedItem = document.TabItem;

            if (document.IsDirty && !ConfirmDocumentSave(document))
            {
                return(false);
            }

            document.SaveWorkingDocument();

            SelectNewTabItem();
            DocumentTabControl.RemoveTabItemWithoutBindingError(document.TabItem);

            WorkDocumentCollection.CloseDocument(document.WorkDocument);

            document.Dispose();
            return(true);
        }
Exemple #3
0
        private static bool ConfirmDocumentSave(DocumentPage document)
        {
            var message = document.WorkDocument.File == null
                                ? "Do you want to save the document?"
                                : $"Do you want to save changes in '{document.WorkDocument.File.FullName}'?";

            var dialogResult = MessageBox.Show(message, "Confirmation", MessageBoxButton.YesNoCancel, MessageBoxImage.Question, MessageBoxResult.Yes);

            switch (dialogResult)
            {
            case MessageBoxResult.Yes:
                return(document.Save());

            case MessageBoxResult.No:
                return(true);

            case MessageBoxResult.Cancel:
                return(false);

            default:
                throw new NotSupportedException($"'{dialogResult}' result is not supported. ");
            }
        }
Exemple #4
0
		private static bool ConfirmDocumentSave(DocumentPage document)
		{
			var message = document.WorkDocument.File == null
				? "Do you want to save the document?"
				: $"Do you want to save changes in '{document.WorkDocument.File.FullName}'?";
			
			var dialogResult = MessageBox.Show(message, "Confirmation", MessageBoxButton.YesNoCancel, MessageBoxImage.Question, MessageBoxResult.Yes);
			switch (dialogResult)
			{
				case MessageBoxResult.Yes:
					return document.Save();
				case MessageBoxResult.No:
					return true;
				case MessageBoxResult.Cancel:
					return false;
				default:
					throw new NotSupportedException($"'{dialogResult}' result is not supported. ");
			}
		}
Exemple #5
0
		internal bool CloseDocument(DocumentPage document)
		{
			DocumentTabControl.SelectedItem = document.TabItem;

			if (document.IsDirty && !ConfirmDocumentSave(document))
			{
				return false;
			}

			document.SaveWorkingDocument();

			SelectNewTabItem();
			DocumentTabControl.RemoveTabItemWithoutBindingError(document.TabItem);

			WorkDocumentCollection.CloseDocument(document.WorkDocument);

			document.Dispose();
			return true;
		}
Exemple #6
0
		private void AddDocumentTabItemContextMenuCommandBindings(DocumentPage documentPage)
		{
			var closeDocumentCommandBinding = new CommandBinding(GenericCommands.CloseDocument, CloseTabExecutedHandler, (sender, args) => args.CanExecute = true);
			documentPage.TabItemContextMenu.CommandBindings.Add(closeDocumentCommandBinding);
			documentPage.CommandBindings.Add(closeDocumentCommandBinding);
			documentPage.TabItemContextMenu.CommandBindings.Add(new CommandBinding(GenericCommands.CloseAllDocumentsButThis, CloseAllButThisTabExecutedHandler, (sender, args) => args.CanExecute = DocumentTabControl.Items.Count > 2));
		}
Exemple #7
0
		public DocumentPage AddNewDocumentPage(WorkDocument workDocument = null)
		{
			var newDocumentPage = new DocumentPage(workDocument);
			
			_editorAdapters.Add(newDocumentPage.EditorAdapter);

			AddDocumentTabItemContextMenuCommandBindings(newDocumentPage);

			DocumentTabControl.Items.Insert(DocumentTabControl.Items.Count - 1, newDocumentPage.TabItem);
			DocumentTabControl.SelectedItem = newDocumentPage.TabItem;

			_findReplaceManager.CurrentEditor = newDocumentPage.EditorAdapter;

			return newDocumentPage;
		}
Exemple #8
0
		public OutputViewer(DocumentPage documentPage)
		{
			DocumentPage = documentPage;

			FileResultViewer = new FileResultViewer(this);

			InitializeComponent();

			_timerExecutionMonitor = new DispatcherTimer(DispatcherPriority.Normal, Dispatcher) { Interval = TimeSpan.FromMilliseconds(100) };
			_timerExecutionMonitor.Tick += TimerExecutionMonitorTickHandler;

			Application.Current.Deactivated += ApplicationDeactivatedHandler;

			Initialize();

			_providerConfiguration = WorkDocumentCollection.GetProviderConfiguration(DocumentPage.CurrentConnection.ProviderName);

			ConnectionAdapter = DocumentPage.DatabaseModel.CreateConnectionAdapter();

			StatementValidator = DocumentPage.InfrastructureFactory.CreateStatementValidator();

			ExecutionPlanViewer = DocumentPage.InfrastructureFactory.CreateExecutionPlanViewer(this);
			TabExecutionPlan.Content = ExecutionPlanViewer.Control;

			TraceViewer = DocumentPage.InfrastructureFactory.CreateTraceViewer(ConnectionAdapter);
			TabTrace.Content = TraceViewer.Control;

			BreakOnExceptions = DocumentPage.WorkDocument.BreakOnExceptions;
		}