public static bool TitlePropertyHasImplicitImplementation(object documentContentOrDocumentViewModel)
        {
            IDocumentContent documentContent = documentContentOrDocumentViewModel as IDocumentContent;

#if !NETFX_CORE
            if (documentContent != null)
            {
                return(ExpressionHelper.PropertyHasImplicitImplementation(documentContent, i => i.Title));
            }
#pragma warning disable 612, 618
            IDocumentViewModel documentViewModel = documentContentOrDocumentViewModel as IDocumentViewModel;
            if (documentViewModel != null)
            {
                return(ExpressionHelper.PropertyHasImplicitImplementation(documentViewModel, i => i.Title));
            }
#pragma warning restore 612, 618
#else
            if (documentContent != null)
            {
                InterfaceMapping mapping = documentContent.GetType().GetTypeInfo().GetRuntimeInterfaceMap(typeof(IDocumentContent));
                return(mapping.TargetMethods.FirstOrDefault(mi => mi.Name == "set_Title" && mi.IsPrivate) != null);
            }
#endif
            throw new ArgumentException("", "documentContentOrDocumentViewModel");
        }
예제 #2
0
 protected AbstractDocument(IDocumentContent content)
 {
     Content = content;
     documentModifiedSupport    = new EventSupport <TextModificationEventArgs>();
     undoableEditCreatedSupport = new EventSupport <UndoableEditEventArgs>();
     filterChain = new RootFilterChain(this);
 }
 internal SpecifyDocumentSignMethod(Guid fileId, string fileName, DraftsBuilderDocumentFileData?data, IDocumentContent documentContent)
 {
     this.fileId          = fileId;
     this.fileName        = fileName;
     this.data            = data;
     this.documentContent = documentContent ?? throw new ArgumentNullException(nameof(documentContent));
 }
예제 #4
0
 public BreakIterator(IDocumentContent content, Func <char, char, T> rule, int startOffset, int endOffset)
 {
     this.content     = content;
     this.rule        = rule;
     this.startOffset = startOffset;
     this.endOffset   = endOffset;
     this.cursor      = startOffset - 1;
 }
        void IDocumentOwner.Close(IDocumentContent documentContent, bool force)
        {
            var document = documents.FirstOrDefault(d => Equals(d.Content, documentContent));

            if (document != null)
            {
                document.Close(force);
            }
        }
예제 #6
0
        void IDocumentOwner.Close(IDocumentContent documentContent, bool force)
        {
            var document = documentsCore.FirstOrDefault((d) => object.Equals(d.Content, documentContent));

            if (document != null)
            {
                document.Close(force);
            }
        }
        public static void OnDestroy(object documentContentOrDocumentViewModel)
        {
            IDocumentContent documentContent = documentContentOrDocumentViewModel as IDocumentContent;

            if (documentContent != null)
            {
                documentContent.OnDestroy();
            }
        }
예제 #8
0
            void form_Closed(object sender, EventArgs e)
            {
                owner.RemoveDocument(this);
                formCore.Closing -= form_Closing;
                formCore.Closed  -= form_Closed;
                IDocumentContent documentContent = GetContent() as IDocumentContent;

                if (documentContent != null)
                {
                    documentContent.OnDestroy();
                }
            }
 void IDocumentOwner.Close(IDocumentContent documentContent, bool force)
 {
     if (window == null || GetViewModel(window.RealWindow) != documentContent)
     {
         return;
     }
     if (force)
     {
         window.Closing -= OnWindowClosing;
     }
     window.Close();
 }
예제 #10
0
        public DocumentContentToUpload_Tests()
        {
            accountId = Guid.NewGuid();
            uploader  = Substitute.For <IContentService>();

            expectedContentId = Guid.NewGuid();
            documentContent   = Substitute.For <IDocumentContent>();
            documentContent.UploadAsync(uploader, accountId, Arg.Any <TimeSpan?>())
            .Returns(expectedContentId);

            crypt = Substitute.For <ICrypt>();
        }
        TViewModel GetEntitiesViewModelCore <TViewModel, TDetailEntity>(LambdaExpression propertyExpression, Func <TViewModel> createViewModelCallback)
            where TViewModel : IDocumentContent
            where TDetailEntity : class
        {
            IDocumentContent result       = null;
            string           propertyName = ExpressionHelper.GetPropertyName(propertyExpression);

            if (!lookUpViewModels.TryGetValue(propertyName, out result))
            {
                result = createViewModelCallback();
                lookUpViewModels[propertyName] = result;
            }
            return((TViewModel)result);
        }
        public static object GetTitle(object documentContentOrDocumentViewModel)
        {
            IDocumentContent documentContent = documentContentOrDocumentViewModel as IDocumentContent;

            if (documentContent != null)
            {
                return(documentContent.Title);
            }
#pragma warning disable 612, 618
            IDocumentViewModel documentViewModel = documentContentOrDocumentViewModel as IDocumentViewModel;
            if (documentViewModel != null)
            {
                return(documentViewModel.Title);
            }
#pragma warning restore 612, 618
            throw new ArgumentException("", "documentContentOrDocumentViewModel");
        }
        public static bool TitlePropertyHasImplicitImplementation(object documentContentOrDocumentViewModel)
        {
            IDocumentContent documentContent = documentContentOrDocumentViewModel as IDocumentContent;

            if (documentContent != null)
            {
                return(ExpressionHelper.PropertyHasImplicitImplementation(documentContent, i => i.Title));
            }
#pragma warning disable 612, 618
            IDocumentViewModel documentViewModel = documentContentOrDocumentViewModel as IDocumentViewModel;
            if (documentViewModel != null)
            {
                return(ExpressionHelper.PropertyHasImplicitImplementation(documentViewModel, i => i.Title));
            }
#pragma warning restore 612, 618
            throw new ArgumentException("", "documentContentOrDocumentViewModel");
        }
예제 #14
0
            void form_Closing(object sender, System.ComponentModel.CancelEventArgs e)
            {
                IDocumentContent documentContent = GetContent() as IDocumentContent;

                if (documentContent != null)
                {
                    documentContent.OnClose(e);
                }
                if (!destroyOnCloseCore)
                {
                    bool cancel = e.Cancel;
                    e.Cancel = true;
                    if (!cancel)
                    {
                        formCore.Hide();
                    }
                }
            }
        public static void OnClose(object documentContentOrDocumentViewModel, CancelEventArgs e)
        {
            IDocumentContent documentContent = documentContentOrDocumentViewModel as IDocumentContent;

            if (documentContent != null)
            {
                documentContent.OnClose(e);
                return;
            }
#pragma warning disable 612, 618
            IDocumentViewModel documentViewModel = documentContentOrDocumentViewModel as IDocumentViewModel;
#pragma warning restore 612, 618
            if (documentViewModel != null)
            {
                e.Cancel = !documentViewModel.Close();
                return;
            }
        }
예제 #16
0
        protected object EnsureViewModel(object viewModel, object parameter, object parentViewModel, object view)
        {
            if (viewModel == null)
            {
                if (view is ISupportViewModel)
                {
                    viewModel = ((ISupportViewModel)view).ViewModel;
                }
                ViewModelHelper.EnsureModuleViewModel(view, parentViewModel, parameter);
            }
            IDocumentContent documentContent = viewModel as IDocumentContent;

            if (documentContent != null)
            {
                documentContent.DocumentOwner = this;
            }
            return(viewModel);
        }
예제 #17
0
 public DocumentContentToUpload(IDocumentContent documentContent, Signature signature)
     : this(documentContent)
 {
     this.signature = signature ?? throw new ArgumentNullException(nameof(signature));
 }
 public void Close(IDocumentContent documentContent, bool force = true) {
     Close(force);
 }
예제 #19
0
 public void Close(IDocumentContent documentContent, bool force = true)
 {
     ActualOwner.Close(documentContent, force);
 }
        void CloseDocumentWithDocumentOwner(IDocument document, bool force)
        {
            IDocumentContent documentContent = (IDocumentContent)document.Content;

            documentContent.DocumentOwner.Close(documentContent, force);
        }
예제 #21
0
 public void Close(IDocumentContent documentContent, bool force = true)
 {
     CurrentDialogContentControl.Close(documentContent, force);
     CurrentDialogContentControl = null;
 }
 public static void CloseDocument(IDocumentManagerService documentManagerService, IDocumentContent documentContent, bool force) {
     IDocument document = documentManagerService.FindDocument(documentContent);
     if(document != null)
         document.Close(force);
 }
예제 #23
0
 public InsertCharEdit(IDocumentContent content, int offset, char text) : base(true, "Insert " + text)
 {
     this.content = content;
     this.offset  = offset;
     this.text    = text;
 }
 void IDocumentOwner.Close(IDocumentContent documentContent, bool force) {
     CloseDocument(this, documentContent, force);
 }
 void IDocumentOwner.Close(IDocumentContent documentContent, bool force)
 {
     CloseDocument(this, documentContent, force);
 }
예제 #26
0
 public void Close(IDocumentContent documentContent, bool force = true) {
     ActualOwner.Close(documentContent, force);
 }
 public SpecifyDocumentSignMethod WithContentToUpload(IDocumentContent documentContent) => new(
예제 #28
0
 public RemoveEdit(IDocumentContent content, int offset, string text) : base(true, "Insert " + text)
 {
     this.content = content;
     this.offset  = offset;
     this.text    = text;
 }
예제 #29
0
 void IDocumentOwner.Close(IDocumentContent documentContent, bool force) {
     if(window == null || GetViewModel(window.RealWindow) != documentContent) return;
     if(force)
         window.RealWindow.Closing -= OnWindowClosing;
     window.RealWindow.Close();
 }
예제 #30
0
 public DocumentContentToUpload(IDocumentContent documentContent, CertificateContent certificate)
     : this(documentContent)
 {
     this.certificate = certificate ?? throw new ArgumentNullException(nameof(certificate));
 }
예제 #31
0
 public DocumentContentToUpload(IDocumentContent documentContent) =>
 this.documentContent = documentContent ?? throw new ArgumentNullException(nameof(documentContent));
예제 #32
0
 public void Close(IDocumentContent documentContent, bool force = true) {
     CurrentDialogContentControl.Close(documentContent, force);
     CurrentDialogContentControl = null;
 }
 public void Close(IDocumentContent documentContent, bool force = true)
 {
     throw new NotImplementedException();
 }
 public void Close(IDocumentContent documentContent, bool force = true)
 {
     Close(force);
 }
        public static void CloseDocument(IDocumentManagerService documentManagerService, IDocumentContent documentContent, bool force)
        {
            IDocument document = documentManagerService.FindDocument(documentContent);

            if (document != null)
            {
                document.Close(force);
            }
        }
 public void Close(IDocumentContent documentContent, bool force = true) {
     throw new NotImplementedException();
 }