BitmapInitialize.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / System / Windows / Media / Imaging / BitmapInitialize.cs / 1 / BitmapInitialize.cs

                            //------------------------------------------------------------------------------ 
//  Microsoft Avalon
//  Copyright (c) Microsoft Corporation.  All Rights Reserved.
//
//  File: BitmapInitialize.cs 
//
//----------------------------------------------------------------------------- 
 

using System; 
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel; 
using System.ComponentModel.Design.Serialization;
using System.Reflection; 
using MS.Internal; 
using MS.Win32;
using System.Security; 
using System.Security.Permissions;
using System.Diagnostics;
using System.Windows.Media;
using System.Globalization; 
using System.Runtime.InteropServices;
using System.Windows.Media.Animation; 
using System.Windows.Media.Composition; 
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID; 

namespace System.Windows.Media.Imaging
{
    #region BitmapInitialize 
    /// 
    /// Utility class providing support for ISupportInitialize 
    ///  
    internal class BitmapInitialize : ISupportInitialize
    { 
        public BitmapInitialize()
        {
        }
 
        public void BeginInit()
        { 
            if (IsInitAtLeastOnce) 
                throw new InvalidOperationException(SR.Get(SRID.Image_OnlyOneInit, null));
 
            if (IsInInit)
                throw new InvalidOperationException(SR.Get(SRID.Image_InInitialize, null));

            _inInit = true; 
        }
 
        public void EndInit() 
        {
            if (!IsInInit) 
                throw new InvalidOperationException(SR.Get(SRID.Image_EndInitWithoutBeginInit, null));

            _inInit = false;
            _isInitialized = true; 
        }
 
        public void SetPrologue() 
        {
            if (!IsInInit) 
            {
                throw new InvalidOperationException(SR.Get(SRID.Image_SetPropertyOutsideBeginEndInit, null));
            }
        } 

        public bool IsInInit 
        { 
            get
            { 
                return _inInit;
            }
        }
 
        public bool IsInitAtLeastOnce
        { 
            get 
            {
                return _isInitialized; 
            }
        }

        public void EnsureInitializedComplete() 
        {
            if (IsInInit) 
                throw new InvalidOperationException(SR.Get(SRID.Image_InitializationIncomplete, null)); 

            if (!IsInitAtLeastOnce) 
                throw new InvalidOperationException(SR.Get(SRID.Image_NotInitialized, null));
        }

        public void Reset() 
        {
            _inInit = false; 
            _isInitialized = false; 
        }
 
        private bool _inInit = false;
        private bool _isInitialized = false;
    }
 
    #endregion
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------ 
//  Microsoft Avalon
//  Copyright (c) Microsoft Corporation.  All Rights Reserved.
//
//  File: BitmapInitialize.cs 
//
//----------------------------------------------------------------------------- 
 

using System; 
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel; 
using System.ComponentModel.Design.Serialization;
using System.Reflection; 
using MS.Internal; 
using MS.Win32;
using System.Security; 
using System.Security.Permissions;
using System.Diagnostics;
using System.Windows.Media;
using System.Globalization; 
using System.Runtime.InteropServices;
using System.Windows.Media.Animation; 
using System.Windows.Media.Composition; 
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID; 

namespace System.Windows.Media.Imaging
{
    #region BitmapInitialize 
    /// 
    /// Utility class providing support for ISupportInitialize 
    ///  
    internal class BitmapInitialize : ISupportInitialize
    { 
        public BitmapInitialize()
        {
        }
 
        public void BeginInit()
        { 
            if (IsInitAtLeastOnce) 
                throw new InvalidOperationException(SR.Get(SRID.Image_OnlyOneInit, null));
 
            if (IsInInit)
                throw new InvalidOperationException(SR.Get(SRID.Image_InInitialize, null));

            _inInit = true; 
        }
 
        public void EndInit() 
        {
            if (!IsInInit) 
                throw new InvalidOperationException(SR.Get(SRID.Image_EndInitWithoutBeginInit, null));

            _inInit = false;
            _isInitialized = true; 
        }
 
        public void SetPrologue() 
        {
            if (!IsInInit) 
            {
                throw new InvalidOperationException(SR.Get(SRID.Image_SetPropertyOutsideBeginEndInit, null));
            }
        } 

        public bool IsInInit 
        { 
            get
            { 
                return _inInit;
            }
        }
 
        public bool IsInitAtLeastOnce
        { 
            get 
            {
                return _isInitialized; 
            }
        }

        public void EnsureInitializedComplete() 
        {
            if (IsInInit) 
                throw new InvalidOperationException(SR.Get(SRID.Image_InitializationIncomplete, null)); 

            if (!IsInitAtLeastOnce) 
                throw new InvalidOperationException(SR.Get(SRID.Image_NotInitialized, null));
        }

        public void Reset() 
        {
            _inInit = false; 
            _isInitialized = false; 
        }
 
        private bool _inInit = false;
        private bool _isInitialized = false;
    }
 
    #endregion
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.

                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK